php数据整理中如何把数组数据写入excel_php用phpspreadsheet写数组与样式设置

看不見的法師
发布: 2025-11-28 17:55:02
原创
690人浏览过
首先安装PhpSpreadsheet库,通过Composer执行composer require phpoffice/phpspreadsheet;接着准备二维数组数据如$data = [['Name' => '张三', 'Age' => 25], ['Name' => '李四', 'Age' => 30]];然后创建Spreadsheet实例并获取活动工作表$sheet = $spreadsheet->getActiveSheet();遍历数据使用setCellValueByColumnAndRow写入内容;再设置样式如$sheet->getStyle('A1:Z1')->getFont()->setBold(true)加粗标题、居中对齐、调整列宽及添加边框;最后创建Xlsx写入器$writer = new \PhpOffice\PhpSpreadsheet\Writer\Xlsx($spreadsheet),调用$writer->save('output.xlsx')保存文件或使用php://output实现浏览器下载。

php数据整理中如何把数组数据写入excel_php用phpspreadsheet写数组与样式设置

如果您需要将PHP中的数组数据导出为Excel文件,并且希望对单元格样式进行自定义设置,可以使用PhpSpreadsheet库来实现。以下是具体的操作步骤:

一、安装PhpSpreadsheet库

PhpSpreadsheet是一个纯PHP编写的库,用于读取和写入电子表格文件。它支持多种格式,包括XLSX、ODS、CSV等。

1、使用Composer在项目目录下执行以下命令安装PhpSpreadsheet:composer require phpoffice/phpspreadsheet

2、确保Composer自动加载机制已启用,通常通过引入vendor/autoload.php来加载依赖。

立即学习PHP免费学习笔记(深入)”;

二、准备要写入的数组数据

在写入Excel之前,先准备好需要导出的二维数组数据,每一行对应Excel中的一行记录。

1、定义一个关联或索引数组,例如:$data = [['Name' => '张三', 'Age' => 25], ['Name' => '李四', 'Age' => 30]];

2、如果使用的是关联数组,可通过提取键作为表头,提升可读性。

三、创建Excel工作簿并写入数据

使用Spreadsheet对象初始化一个新的工作簿,并获取活动工作表以进行数据填充。

1、实例化Spreadsheet类:$spreadsheet = new \PhpOffice\PhpSpreadsheet\Spreadsheet();

2、获取当前激活的工作表:$sheet = $spreadsheet->getActiveSheet();

3、遍历数组,从第一行开始逐行写入数据,例如使用循环:foreach ($data as $rowIndex => $row) { foreach ($row as $colIndex => $value) { $sheet->setCellValueByColumnAndRow($colIndex + 1, $rowIndex + 1, $value); } }

四、设置单元格样式

通过Style组件可以对字体、边框、对齐方式、背景色等进行设置,提升表格的可视化效果。

1、设置标题行字体加粗:$sheet->getStyle('A1:Z1')->getFont()->setBold(true);

2、设置文本居中对齐:$sheet->getStyle('A1:Z100')->getAlignment()->setHorizontal(\PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER);

3、设置列宽以适应内容:$sheet->getColumnDimension('A')->setWidth(20);

4、为特定区域添加边框:$sheet->getStyle('A1:B10')->getBorders()->getAllBorders()->setBorderStyle(\PhpOffice\PhpSpreadsheet\Style\Border::BORDER_THIN);

五、保存为Excel文件

使用适当的写入器将生成的Spreadsheet对象输出为物理文件。

1、创建Xlsx写入器实例:$writer = new \PhpOffice\PhpSpreadsheet\Writer\Xlsx($spreadsheet);

2、将文件保存到指定路径:$writer->save('output.xlsx');

3、如需浏览器直接下载,可修改headers并调用$writer->save('php://output');配合正确的Content-Type头信息。

以上就是php数据整理中如何把数组数据写入excel_php用phpspreadsheet写数组与样式设置的详细内容,更多请关注php中文网其它相关文章!

WPS零基础入门到精通全套教程!
WPS零基础入门到精通全套教程!

全网最新最细最实用WPS零基础入门到精通全套教程!带你真正掌握WPS办公! 内含Excel基础操作、函数设计、数据透视表等

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号