不经过悉心栽培,花儿开不出鲜艳的花朵;不经过时间的历练,幼苗长不成参天大树。

PHPExcel在PHP7中,save(‘php://output’)出现ERR_INVALID_RESPONSE错误的解决方法

php 建伟 9071℃ 0评论

在php7之前是可以正常导出的,在php7中使用save(‘php://output’)出现ERR_INVALID_RESPONSE的错误主要是下面错误导致。

1.header和缓冲区的错误导致,下面示例代码可以正常导出:

header('Content-type: application/vnd.ms-excel;charset=utf-8;name="' . $xlsTitle . '.xls"');
header("Content-Disposition: attachment; filename=$fileName.xls");
header('Cache-Control: max-age=0');
//header ('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
//header ('Cache-Control: cache, must-revalidate');
header ('Pragma: public');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');

2.错误语法导致:打开PHPExcel\Calculation\Functions.php文件,删除掉581行的break即可。

 

具体讨论可以看这里(国外的,打开有点慢):http://stackoverflow.com/questions/8566196/phpexcel-to-download

转载请注明:Li Jianwei's Blog » PHPExcel在PHP7中,save(‘php://output’)出现ERR_INVALID_RESPONSE错误的解决方法

喜欢 (5)or分享 (0)
web技术交流群
22765697