0

0

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

看不見的法師

看不見的法師

发布时间:2025-11-28 17:55:02

|

760人浏览过

|

来源于php中文网

原创

首先安装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头信息。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
composer是什么插件
composer是什么插件

Composer是一个PHP的依赖管理工具,它可以帮助开发者在PHP项目中管理和安装依赖的库文件。Composer通过一个中央化的存储库来管理所有的依赖库文件,这个存储库包含了各种可用的依赖库的信息和版本信息。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

161

2023.12.25

php中foreach用法
php中foreach用法

本专题整合了php中foreach用法的相关介绍,阅读专题下面的文章了解更多详细教程。

267

2025.12.04

require的用法
require的用法

require的用法有引入模块、导入类或方法、执行特定任务。想了解更多require的相关内容,可以阅读本专题下面的文章。

510

2023.11.27

html边框设置教程
html边框设置教程

本教程将带你全面掌握HTML/CSS边框设置,从基础的border属性讲起,涵盖所有边框样式、圆角设置及高级技巧,帮助你快速上手实现各种边框效果。

44

2025.09.02

excel对比两列数据异同
excel对比两列数据异同

Excel作为数据的小型载体,在日常工作中经常会遇到需要核对两列数据的情况,本专题为大家提供excel对比两列数据异同相关的文章,大家可以免费体验。

1454

2023.07.25

excel重复项筛选标色
excel重复项筛选标色

excel的重复项筛选标色功能使我们能够快速找到和处理数据中的重复值。本专题为大家提供excel重复项筛选标色的相关的文章、下载、课程内容,供大家免费下载体验。

428

2023.07.31

excel复制表格怎么复制出来和原来一样大
excel复制表格怎么复制出来和原来一样大

本专题为大家带来excel复制表格怎么复制出来和原来一样大相关文章,帮助大家解决问题。

572

2023.08.02

excel表格斜线一分为二
excel表格斜线一分为二

在Excel表格中,我们可以使用斜线将单元格一分为二。本专题为大家带来excel表格斜线一分为二怎么弄的相关文章,希望可以帮到大家。

1264

2023.08.02

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

76

2026.03.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP课程
PHP课程

共137课时 | 13.4万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 11.3万人学习

PHP新手语法线上课程教学
PHP新手语法线上课程教学

共13课时 | 1.0万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

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