本文介绍如何使用PhpSpreadsheet库将包含客户及产品信息的复杂嵌套数组数据导出到Excel表格,并实现单元格合并。
假设我们拥有如下结构的数组数据:
$data = [ "customer" => "西卡若卡", "product" => [ [ "name" => "瓶-500ml塑料瓶", "parts" => "24牙35克", "rongliang" => "500ml" ], [ "name" => "内塞-500ml塑料瓶", "parts" => "19小孔内塞+盖板", ], [ "name" => "盖子-500ml塑料瓶", "parts" => "24牙双层pp盖", ], ] ];
目标是将客户名称在Excel第一行合并显示,产品信息在其下逐行展开。
以下步骤利用PhpSpreadsheet完成数据导出和单元格合并:
立即学习“PHP免费学习笔记(深入)”;
加载库并创建对象:
use PhpOffice\PhpSpreadsheet\Spreadsheet; use PhpOffice\PhpSpreadsheet\Writer\Xlsx; $spreadsheet = new Spreadsheet(); $sheet = $spreadsheet->getActiveSheet();
写入客户信息并合并单元格:
$sheet->setCellValue('A1', '客户: ' . $data['customer']); $sheet->mergeCells('A1:C1'); // 合并A1到C1单元格
写入产品信息:
$row = 2; // 从第二行开始写入 foreach ($data['product'] as $product) { $sheet->setCellValue('A' . $row, $product['name']); $sheet->setCellValue('B' . $row, $product['parts']); if (isset($product['rongliang'])) { $sheet->setCellValue('C' . $row, $product['rongliang']); } $row++; }
保存Excel文件:
$writer = new Xlsx($spreadsheet); $writer->save('example.xlsx');
通过以上步骤,即可生成包含合并单元格和嵌套数组数据的Excel文件。此方法具有良好的灵活性和可扩展性,适用于处理各种复杂的数组结构。
以上就是如何使用PhpSpreadsheet将包含客户和产品信息的数组导出到Excel文件并合并行?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号