php excel table怎么导出?php导出excel表格乱码怎么办

在 PHP 中处理 Excel 表格(通常指 .xlsx 或 .xls 格式)主要有以下几种常见方式:


✅ 推荐方案:使用第三方库

PhpSpreadsheet(官方推荐,功能强大)

这是 PHP 官方维护的库,支持读写 .xlsx、.xls、.csv 等格式。

PHP高级|PHPExcel+PHP开发框架TP5实现百万级报表数据导入实战教程
加载中
PHP高级|PHPExcel+PHP开发框架TP5实现百万级报表数据导入实战教程

安装

composer require phpoffice/phpspreadsheet

示例:创建 Excel 文件并写入数据

<?php
require 'vendor/autoload.php';
use PhpOfficePhpSpreadsheetSpreadsheet;
use PhpOfficePhpSpreadsheetWriterXlsx;
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
// 写入数据
$sheet->setCellValue('A1', '姓名');
$sheet->setCellValue('B1', '年龄');
$sheet->setCellValue('C1', '城市');
$sheet->setCellValue('A2', '张三');
$sheet->setCellValue('B2', 25);
$sheet->setCellVa

php excel table怎么导出?php导出excel表格乱码怎么办

lue('C2', '北京'); $sheet->setCellValue('A3', '李四'); $sheet->setCellValue('B3', 30); $sheet->setCellValue('C3', '上海'); // 保存为 .xlsx 文件 $writer = new Xlsx($spreadsheet); $writer->save('output.xlsx'); echo "Excel 文件已生成:output.xlsx"; ?>

示例:读取 Excel 文件

<?php
require 'vendor/autoload.php';
use PhpOfficePhpSpreadsheetIOFactory;
$spreadsheet = IOFactory::load('input.xlsx');
$sheet = $spreadsheet->getActiveSheet();
foreach ($sheet->getRowIterator() as $row) {
    $cellIterator = $row->getCellIterator();
    $cellIterator->setIterateAll(true);
    $rowData = [];
    foreach ($cellIterator as $cell) {
        $rowData[] = $cell->getValue();
    }
    print_r($rowData);
}
?>

SimpleExcel(轻量级,适合简单场景)

composer require maennchen/zipstream-php
composer require simple-excel/simple-excel

php excel table怎么导出?php导出excel表格乱码怎么办

<?php
require 'vendor/autoload.php';
use SimpleExcelSimpleExcel;
// 写入
$writer = new SimpleExcel('csv', 'output.csv');
$writer->addRow(['姓名', '年龄', '城市']);
$writer->addRow(['张三', 25, '北京']);
$writer->save();
// 读取
$reader = new SimpleExcel('csv', 'input.csv');
while ($row = $reader->nextRow()) {
    print_r($row);
}
?>

❌ 不推荐的方式

使用原生 PHP 函数(仅适用于 CSV)

<?php
// 写入 CSV
$fp = fopen('output.csv', 'w');
fputcsv($fp, ['姓名', '年龄', '城市']);
fputcsv($fp, ['张三', 25, '北京']);
fclose($fp);
// 读取 CSV
$fp = fopen('input.csv', 'r');
while (($data = fgetcsv($fp)) !== false) {
    print_r($data);
}
fclose($fp);
?>

⚠️ 注意:CSV 不是真正的 Excel 格式,不支持样式、多工作表等功能。

php excel table怎么导出?php导出excel表格乱码怎么办


📊 各方案对比

方案 支持格式 功能 性能 推荐程度
PhpSpreadsheet .xlsx, .xls, .csv, .ods 完整(样式、公式、多表) 中等
SimpleExcel .csv, .xlsx 基础读写 快
原生 fgetcsv .csv 仅 CSV 最快 ⭐⭐(仅限简单场景)

💡 最佳实践建议

  1. 需要完整 Excel 功能(样式、公式、多工作表)→ 使用 PhpSpreadsheet
  2. 只需简单读写 CSV → 使用原生 fgetcsv / fputcsv
  3. 大数据量导出 → 考虑使用 PhpSpreadsheet 的 ChunkWrite 模式或生成 CSV

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/php-excel-table%e6%80%8e%e4%b9%88%e5%af%bc%e5%87%ba%ef%bc%9fphp%e5%af%bc%e5%87%baexcel%e8%a1%a8%e6%a0%bc%e4%b9%b1%e7%a0%81%e6%80%8e%e4%b9%88%e5%8a%9e/

赞 (0)
Excel虚线边框怎么画?如何设置虚线边框
上一篇 2026年7月11日 18:28
cdn加速是什么,cdn加速原理
下一篇 2026年7月11日 18:29

相关推荐

  • 广电网络机顶盒端口怎么接?广电网络机顶盒端口连接方法

    针对2026年全4K/8K超高清与全屋智能普及的视听需求,广电网络机顶盒端口必须具备HDMI 2.1及以上、千兆网口、USB 3.0及AV复合输出的全接口配置,方能彻底解决带宽瓶颈、音视频源码透传与老旧电视兼容的痛点,广电网络机顶盒端口全景解析与功能重构视频输出端口:从画面呈现到极致色彩作为机顶盒与显示设备的核……

    2026年4月24日
    5500
  • AI怎么做数据分析图,新手如何用AI快速生成图表?

    人工智能正在将数据可视化从繁琐的手工绘图转变为智能的对话式洞察生成,核心结论是:利用AI进行数据分析图制作,本质是通过自然语言处理与机器学习算法,自动完成数据清洗、模式识别与视觉映射的过程, 这种方式极大地降低了技术门槛,让非技术人员也能快速通过数据驱动决策,同时将分析师从重复劳动中解放出来,专注于高价值的业务……

    2026年2月26日
    13500
  • 青岛GPU租用一个月的费用怎么算,哪里便宜

    青岛GPU租用一个月的费用没有固定数字,它主要由GPU型号、配套配置和网络带宽三大变量决定,按需计算才能控制成本,避免为用不上的性能买单,青岛GPU租用一个月费用怎么算?先看这三个核心变量费用计算不是简单的单价乘以小时,而是多个参数叠加后的结果,在青岛本地租用,与线上云租赁的计费逻辑基本一致,但地域机房的选择会……

    2026年8月12日
    1900
  • dnf登录一直连接服务器失败怎么办?,是什么原因?

    DNF登录一直连接服务器失败,核心原因多出在本地网络与服务器之间的连接环节,90%的情况可通过重置网络、修改DNS或更换节点解决,这不是你账号的问题,也不是电脑配置不够,而是数据包没能顺利抵达服务器,下面按排查顺序给出可落地的解决方案,DNF登录一直连接服务器失败什么原因先别急着折腾系统,绝大多数登录失败都能归……

    2026年8月11日
    1000
  • ajax如何访问内网数据库?ajax跨域请求内网数据解决方案

    Ajax访问内网数据库的核心在于通过后端代理转发请求,利用Nginx反向代理或Spring Boot网关解决跨域问题,同时配合JWT令牌认证确保内网数据的安全性,严禁前端直接暴露数据库端口,在2026年的企业级开发场景中,前端与后端的数据交互早已超越了简单的页面刷新,许多开发者在尝试让前端页面直接读取内网数据库……

    2026年6月2日
    5300
  • 我的世界网易版2b2t服务器怎么进?,进不去怎么办

    对于“我的世界网易版2b2t服务器怎么进”这个问题,核心答案是:由于网易版客户端限制,你无法直接进入原版2b2t.org服务器,但可以通过使用Java版官方启动器或第三方启动器来实现,同时网易版内也有不少模仿2b2t风格的无政府服务器可供选择,为什么网易版客户端无法直接连接2b2t很多玩家在网易版启动器里搜了半……

    2026年8月6日
    1400
  • AI互动课开发套件双十二优惠活动有哪些,双十二价格是多少?

    在当前教育数字化转型的关键时期,抓住年底促销窗口期进行技术升级,是教育机构与企业降低成本、提升竞争力的核心策略,通过参与AI互动课开发套件双十二优惠活动,不仅能够以最优预算获得前沿的AIGC开发工具,更能构建一套高效、智能、标准化的课程生产流水线,从而在即将到来的新一年中抢占在线教育市场的高地,教育技术升级的战……

    2026年2月22日
    15100
  • ftp客户端如何上传文件到服务器?ftp客户端怎么上传文件到服务器

    使用 FTP 客户端上传文件到服务器通常分为以下几个步骤,这里以最常用的免费 FTP 客户端 FileZilla 为例进行说明,其他客户端(如 WinSCP、FlashFXP、CuteFTP 等)操作逻辑基本相似,第一步:获取服务器连接信息在上传之前,你需要从你的服务器提供商(如阿里云、腾讯云、AWS 或自建服……

    2026年7月11日
    12000
  • 果洛州电话智能语音外呼系统好用吗?

    果洛州企业部署电话智能语音外呼系统,能显著降低人工成本并提升营销转化率,是解决偏远地区人力短缺与高效触达客户的最优解,在果洛藏族自治州这样地域辽阔、人口相对分散的地区,传统的地推或人工电话营销面临着巨大的挑战,路途遥远导致的时间成本高企,以及专业销售人员的招聘难、留存难,让许多中小企业在拓展业务时感到力不从心……

    2026年5月26日
    3800
  • 服务器flashfxp怎么连接?flashfxp使用教程详解

    FlashFXP作为FTP客户端工具,凭借其稳定的传输性能和丰富的功能配置,成为服务器文件管理的首选解决方案,其核心优势在于高效的数据传输能力和灵活的安全策略,能够满足企业级用户对文件传输的严苛要求,高效传输机制保障业务连续性FlashFXP采用多线程传输技术,实测传输速度比同类工具快30%-50%,其断点续传……

    2026年4月8日
    6300

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注