Ricardo的博客

我本逍遥一散人

记一次phpExcel导出问题

问题背景

使用phpSpreadsheet进行导出,保存到服务器然后在下载没有问题,但是直接从浏览器输出然后使用office打开会出现如下问题,奇怪的是wps可以打开。

wei xin jie tu 20220818150625 - 记一次phpExcel导出问题

解决方案

网上有说是 mysql数据编码的问题,也有说是缓冲区中处理BOM头的问题,但是其实处理很简单

(new Xlsx($spreadsheet))->save($save_path ?? 'php://output');
exit;

在输出后加上exit;即可

原因

这个问题的原因在于,如果不在输出完成后强行结束程序,框架可能还会有其他的输出内容会一起写入到excel里面,就会导致读取异常,我们可以看一下错误的excel的文件末尾内容

wei xin tu pian 20220818154059 - 记一次phpExcel导出问题

这一截多余的数据就会导致excel打不开

每日一句优化sql之慢sql查询

上一篇

ubuntu安装elastalert2进行慢日志企微机器人

下一篇
评论
发表评论 说点什么
还没有评论
119
0