讲师中心 微信公众号
AI工具推荐 视频效率加速

php工具如何使用PHPExcel处理表格_php工具报表生成的操作方法

云枫吖_6893

云枫吖_6893

发布时间:2025-10-29 17:18:01

|

765人浏览过

|

来源于php中文网

原创

PHPExcel用于生成Excel报表,需引入类库并创建实例。依次设置属性、写入数据、格式化样式(如列宽、金额格式、加粗表头),最后通过IOFactory输出至浏览器或保存服务器,支持.xls和.xlsx格式,适用于中小数据量报表处理。

php工具如何使用phpexcel处理表格_php工具报表生成的操作方法

PHPExcel 是一个功能强大的 PHP 库,用于读取和写入 Excel 文件格式(如 .xls、.xlsx、.csv 等)。虽然该项目已停止维护,被 PhpSpreadsheet 取代,但仍有大量项目在使用它。以下是使用 PHPExcel 生成报表的基本操作方法。

1. 引入 PHPExcel 类库

首先确保你已下载并引入 PHPExcel 文件。你可以从 GitHub 或旧版本源码中获取,解压后将整个文件夹放入项目目录。

使用时通过 require_once 加载主类文件:

require_once 'PHPExcel/Classes/PHPExcel.php';

加载后可创建实例对象进行操作。

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

2. 创建 Excel 表格并写入数据

生成报表的核心是创建工作表、填充数据并设置样式。

示例:生成一份销售报表

Github Manage Security Alerts
Github Manage Security Alerts

当用户要求检查、分流、汇总、导出或安全更新 GitHub 安全警报(如代码扫描、Dependabot、恶意软件或密钥扫描)时使用。

下载
// 实例化 PHPExcel 对象
$objPHPExcel = new PHPExcel();

// 设置文档属性(可选)
$objPHPExcel->getProperties()
    ->setCreator("Your Name")
    ->setTitle("销售报表")
    ->setSubject("月度销售数据");

// 获取活动工作表
$objSheet = $objPHPExcel->getActiveSheet();
$objSheet->setTitle('销售数据');

// 写入表头
$objSheet->setCellValue('A1', '订单编号');
$objSheet->setCellValue('B1', '客户姓名');
$objSheet->setCellValue('C1', '金额');
$objSheet->setCellValue('D1', '日期');

// 模拟数据写入
$data = [
    ['SO001', '张三', 299.50, '2024-04-01'],
    ['SO002', '李四', 450.00, '2024-04-02'],
    ['SO003', '王五', 199.99, '2024-04-03']
];

$rowIndex = 2; // 从第2行开始写入数据
foreach ($data as $row) {
    $objSheet->setCellValue('A' . $rowIndex, $row[0]);
    $objSheet->setCellValue('B' . $rowIndex, $row[1]);
    $objSheet->setCellValue('C' . $rowIndex, $row[2]);
    $objSheet->setCellValue('D' . $rowIndex, $row[3]);
    $rowIndex++;
}

3. 格式化单元格与列宽调整

为了让报表更清晰,可以设置列宽、数字格式、字体等。

  • 自动调整列宽: $objSheet->getColumnDimension('A')->setAutoSize(true);
  • 设置金额格式: $objSheet->getStyle('C2:C100')->getNumberFormat()->setFormatCode('#,##0.00');
  • 加粗表头: $objSheet->getStyle('A1:D1')->getFont()->setBold(true);

4. 输出文件到浏览器或保存到服务器

完成数据写入后,可以选择输出给用户下载,或保存在服务器上。

导出到浏览器(用户下载):

header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="sales_report.xls"');
header('Cache-Control: max-age=0');

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
exit;

保存到服务器:

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('./reports/sales_report.xls');

支持的格式包括:Excel5(.xls) 和 Excel2007(.xlsx),选择对应 Writer 即可。

基本上就这些。掌握这些步骤后,你可以根据实际业务组装数据,生成各类统计报表。注意 PHPExcel 对内存消耗较大,处理大数据量时建议分批或改用 PhpSpreadsheet 优化性能。

相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

小橡皮AI

一款AI工具,主要用于小橡皮一键去AI味,将机器味重的内容改得更有活人感,防止因为 AI 内容被平台打上 AI 标签,以及限流,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

UpDream
UpDream Hot

一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

UP简历
UP简历 Hot

一款AI办公效率工具,主要用于基于AI技术的免费在线简历制作工具,适合需要提升相关任务效率的用户。

SkildArt
SkildArt Hot

SkildArt是一款AI文本写作工具,一站式 AI 视觉创作平台。

相关专题

更多
github中文官网入口 github中文版官网网页进入
github中文官网入口 github中文版官网网页进入

github中文官网入口https://docs.github.com/zh/get-started,GitHub 是一种基于云的平台,可在其中存储、共享并与他人一起编写代码。 通过将代码存储在GitHub 上的“存储库”中,你可以: “展示或共享”你的工作。 持续“跟踪和管理”对代码的更改。

8705

2026.01.21

GitHub官网入口版本汇总
GitHub官网入口版本汇总

本专题整合了GitHub入口版本地址汇总,阅读专题下面的文章了解更多详细内容。

918

2026.04.02

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

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

5761

2023.07.25

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

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

3616

2023.07.31

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

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

3400

2023.08.02

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

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

1444

2023.08.02

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

excel斜线表头一分为二的方法有使用合并单元格功能方法、使用文本框功能方法、使用自定义格式方法。本专题为大家提供excel斜线表头一分为二相关的各种文章、以及下载和课程。

717

2023.08.02

绝对引用的输入方法
绝对引用的输入方法

绝对引用允许在公式中引用一个固定的单元格,而不会随着公式的复制和粘贴而改变引用的单元格。本专题为大家提供绝对引用相关内容的文章,大家可以免费体验。

5148

2023.08.09

Uvicorn 报错与问题解决教程
Uvicorn 报错与问题解决教程

本专题汇总了Uvicorn服务器常见问题与报错解决的教程合集,涵盖启动失败、端口占用、模块导入错误、事件循环冲突及热重载失效等典型故障的排查思路。同时整理了多进程与Worker配置、SSL/HTTPS证书报错、跨域与代理配置等实战解决方案,助你快速定位并解决Uvicorn运行中的各类问题。

0

2026.11.02

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
phpEnv手册
phpEnv手册

共0课时 | 0人学习

安装 Xdebug 并配置 phpstorm
安装 Xdebug 并配置 phpstorm

共1课时 | 199人学习

如何安装 Composer
如何安装 Composer

共1课时 | 219人学习

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

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn