You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CodeIgniter使用PHPExcel库导出Excel文件下载后内容异常问题求助

代码核心错误及修复方案

  • 核心错误:导出使用了错误的PHPExcel实例
    你所有的表头、数据都写入了自行实例化的$object对象,但最后生成Excel文件时调用的是框架加载的空$this->excel对象,导致文件没有写入有效内容,打开后显示乱码。
    修复方法:将导出代码行
$objWriter = PHPExcel_IOFactory::createWriter($this->excel, 'Excel5');

替换为

$objWriter = PHPExcel_IOFactory::createWriter($object, 'Excel5');
  • 次要问题:输出缓存处理不严谨
    如果框架执行过程中存在多余输出(比如空白字符、报错信息),也会污染Excel文件结构,建议调整输出部分代码:
// 清空所有之前的输出,避免多余内容污染文件
ob_end_clean();
ob_start();
$objWriter->save('php://output');
// 输出完成后直接终止程序,防止后续逻辑输出多余内容
exit;
  • 可选优化:补充header头提升浏览器兼容性
    可以在原有header后补充以下配置,避免部分浏览器下载或打开异常:
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');

内容的提问来源于stack exchange,提问作者qas da

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 11:15:04