PHP7导出Excel报ERR_EMPTY_RESPONSE解决方法

网络编程 2025-03-23 21:21www.168986.cn编程入门

PHP7导出Excel遇到ERR_EMPTY_RESPONSE问题的解决指南

在本地使用PHP导出Excel毫无问题,但一旦部署到Linux环境,就可能会遇到ERR_EMPTY_RESPONSE的报错。本文将为大家介绍在不降低PHP版本的情况下,如何解决这一问题。

一、问题描述

使用PHP导出Excel时,可能会遇到页面提示ERR_EMPTY_RESPONSE的错误。尽管上传Excel文件时可以正常读取数据,但在尝试导出时却会遇到问题。

二、背景介绍

本文使用的PHP版本是7.1,PHPExcel版本为1.8.1。需要注意的是,PHPExcel的开发者已经有一段时间没有对其进行更新了。

三、解决方案

将PHPExcel里的Class文件内容复制到thinkphp的vendor目录下,并重命名为PHPExcel。也就是说,将旧的插件替换为1.8.1版本。

四、代码调整

问题的关键部分集中在Excel的输出上。以下是成功导出Excel的写法(省略了生成Excel的部分):

定义头部后直接进行输出。

```php

$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。PhpSpreadsheet是PHPOffice开源的一个项目,具有更好的性能和更多的功能。相关资源如下:

GitHub地址:<

文档地址:<

以上就是关于PHP7导出Excel报ERR_EMPTY_RESPONSE的相关解决步骤和方法。感谢大家的阅读和对狼蚁SEO的支持。希望本文能帮助大家在Linux环境下顺利导出Excel,避免ERR_EMPTY_RESPONSE的错误。

上一篇:mysql中url时区的陷阱该如何规避详解 下一篇:没有了

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by