欢迎来到全国社交动力网络科技有限公司
建站资讯

当前位置: 首页 > 建站资讯 > 建站教程 > PHP教程

php数据如何实现数据导出为Excel_php数据PHPExcel库操作表格

作者:商城建站价格 来源:php入门日期:2025-11-02
答案:PHP通过PHPExcel库实现数据导出为Excel,先引入库文件,连接数据库获取数据,创建Excel对象并设置属性、表头和内容,最后输出下载。推荐使用PHPSpreadsheet替代PHPExcel以支持更多格式。

php数据如何实现数据导出为excel_php数据phpexcel库操作表格

PHP实现数据导出为Excel,常用的方式是借助PHPExcel库(现已被PHPSpreadsheet取代),它可以灵活操作Excel文件的读取与写入。虽然PHPExcel已停止维护,但仍有大量项目在使用。以下是基于PHPExcel库将数据库数据导出为Excel表格的完整操作流程。

安装与引入PHPExcel库

PHPExcel未通过Composer默认维护,但可通过手动引入或旧版方式使用:

方法一:手动下载并引入从GitHub或其他资源下载PHPExcel项目包 解压后放入项目目录,如libs/PHPExcel 使用require_once加载核心文件

示例代码:

require_once 'libs/PHPExcel/Classes/PHPExcel.php';
登录后复制方法二:使用Composer(推荐)

尽管PHPExcel已废弃,仍可安装:

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

composer require phpoffice/phpexcel
登录后复制

连接数据库并获取数据

通常从MySQL等数据库查询数据,准备导出内容:

$pdo = new PDO("mysql:host=localhost;dbname=test", "username", "password");$stmt = $pdo->query("SELECt id, name, email, created_at FROM users");$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
登录后复制

确保查询结果为二维数组结构,便于遍历写入Excel。

怪兽AI数字人 怪兽AI数字人

数字人短视频创作,数字人直播,实时驱动数字人

怪兽AI数字人44 查看详情 怪兽AI数字人

使用PHPExcel创建Excel文件

初始化PHPExcel对象,设置表头,填充数据:

$objPHPExcel = new PHPExcel();// 设置文档属性$objPHPExcel->getProperties()->setCreator("System")             ->setLastModifiedBy("User")             ->setTitle("用户数据导出")             ->setSubject("用户信息");// 设置当前工作表$objPHPExcel->setActiveSheetIndex(0);$objSheet = $objPHPExcel->getActiveSheet();// 写入表头$objSheet->setCellValue('A1', 'ID');$objSheet->setCellValue('B1', '姓名');$objSheet->setCellValue('C1', '邮箱');$objSheet->setCellValue('D1', '注册时间');// 填充数据(从第二行开始)$row = 2;foreach ($data as $item) {    $objSheet->setCellValue('A' . $row, $item['id']);    $objSheet->setCellValue('B' . $row, $item['name']);    $objSheet->setCellValue('C' . $row, $item['email']);    $objSheet->setCellValue('D' . $row, $item['created_at']);    $row++;}// 自动调整列宽$objSheet->getColumnDimension('A')->setAutoSize(true);$objSheet->getColumnDimension('B')->setAutoSize(true);$objSheet->getColumnDimension('C')->setAutoSize(true);$objSheet->getColumnDimension('D')->setAutoSize(true);// 设置标题行加粗$objSheet->getStyle('A1:D1')->getFont()->setBold(true);
登录后复制

输出Excel文件供下载

设置HTTP响应头,将Excel文件输出到浏览器,触发下载:

header('Content-Type: application/vnd.ms-excel');header('Content-Disposition: attachment;filename="users_export.xls"');header('Cache-Control: max-age=0');$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); // Excel5对应.xls格式$objWriter->save('php://output');
登录后复制

这样用户访问该PHP脚本时,浏览器会自动弹出下载对话框,保存为users_export.xls文件。

注意:Excel5生成的是.xls(二进制格式),若需.xlsx格式,应使用'Excel2007'并更改MIME类型和扩展名:

header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');header('Content-Disposition: attachment;filename="users_export.xlsx"');$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');$objWriter->save('php://output');
登录后复制

基本上就这些。使用PHPExcel可以轻松将PHP数据导出为Excel表格,适合中小规模数据导出需求。对于新项目,建议迁移到PHPSpreadsheet,语法更现代,支持更多格式。但老项目中PHPExcel依然稳定可用。

以上就是php数据如何实现数据导出为Excel_php数据PHPExcel库操作表格的详细内容,更多请关注php中文网其它相关文章!

标签: php开发培训
上一篇: 如何撤销 "make install" 的操作?
下一篇: 如何在Ubuntu 22.04上解决PHP内存限制问题的解决办法?

推荐建站资讯

更多>