PHP7导出Excel报ERR_EMPTY_RESPONSE解决方法

yipeiwu_com4年前PHP代码库

PHP在本机可以正常导出Excel,在上Linux就提示ERR_EMPTY_RESPONSE,下面说一下怎么不降版本还能正常导出Excel,解决上面的问题。

使用导出Excel的时候显示错误页面提示如下,这时候发现上传Excel都可以正常读取数据,只是导出的时候不可以。

我这里使用的PHP版本是7.1。PHPExcel版本用的是1.8.1。github地址:

https://github.com/PHPOffice/PHPExcel/tree/1.8.1。可以看到作者已经3年没更新过了。

将PHPExcel里面的Class内容都拷贝到thinkphp的vendor目录下。重命名为PHPExcel。也就是将之前老的插件换成这个1.8.1的版本。

具体怎么写Excel和引入插件我就不说了。说下代码方面的写法。

问题其实集中出现在Excel输出这里。(下面是成功导出Excel的写法,前面生成Excel的部分略去了)定义头部后直接输出。

$filename = "模板文件".date("YmdHis").rand(1000,9999);$filename = iconv("utf-8", "gb2312", $filename);header("Pragma: public");header("Expires: 0");header("Cache-Control:must-revalidate, post-check=0, pre-check=0");header("Content-Type:application/force-download");header("Content-Type:application/vnd.ms-execl");header("Content-Type:application/octet-stream");header("Content-Type:application/download");;header('Content-Disposition:attachment;filename='.$filename.'.xls');header("Content-Transfer-Encoding:binary");$objWriter->save('php://output');

也可以使用PhpSpreadsheet来读写Excel。

github:https://github.com/PHPOffice/PhpSpreadsheet

文档:https://phpspreadsheet.readthedocs.io/en/develop/

以上就是关于PHP7导出Excel报ERR_EMPTY_RESPONSE的相关解决步骤和方法,感谢大家的阅读和对【宜配屋www.yipeiwu.com】的支持。

相关文章

PHP使用标准库spl实现的观察者模式示例

本文实例讲述了PHP使用标准库spl实现的观察者模式。分享给大家供大家参考,具体如下: 前面使用纯php实现了一个观察者模式(php观察者模式), 现在使用php标准库spl在次实现观察...

探讨php define()函数及defined()函数使用详解

The define() function defines a constant.define()函数的作用是:定义一个常量。 Constants are much like varia...

php实现通过soap调用.Net的WebService asmx文件

本文实例讲述了php实现通过soap调用.Net的WebService asmx文件。分享给大家供大家参考,具体如下: 最近,帮一个同行测试用.net写的WebService接口,C#调...

php的POSIX 函数以及进程测试的深入分析

php的POSIX 函数以及进程测试的深入分析

复制代码 代码如下:<?phpecho posix_getpid(); //8805sleep(10);?> 再用 #ps -ax 这个时候如果多开开个浏览器请求,就会发...

解读PHP的Yii框架中请求与响应的处理流程

一、请求(Requests) 请求: 一个应用的请求是用 yii\web\Request 对象来表示的,该对象提供了诸如 请求参数(译者注:通常是GET参数或者POST参数)、HTTP头...