PHPExcel导出数据量过大处理

今天使用PHPExce插件导不出数据,发现是数据量过大的原因,这里只做简单的处理。

1、导出超时处理:在执行页面添加:set_time_limit(0);

2、内存溢出:在执行页面添加:ini_set("memory_limit", "1024M");

简单来说就是在执行页面添加了以下两行代码:



set_time_limit(0);

ini_set("memory_limit", "1024M");

我这是1万多的数据处理,如数据量更大,可以参考:https://blog.csdn.net/Drug_/article/details/78716358

的处理方式

3. 如果接口报502错误

zb@zb-computer:/usr/local/php/etc$ pwd
/usr/local/php/etc


php-fpm.conf
request_terminate_timeout = 1000 修改最大执行极限时间


4.nginx 最大执行时间,如果没配置好,也会报504 nginx.conf


zb@zb-computer:/usr/local/nginx/conf$ pwd
/usr/local/nginx/conf


  fastcgi_connect_timeout 1200;

  fastcgi_send_timeout 1200;

  fastcgi_read_timeout 1200;

  -----主要应该是后面两个参数,设置为20分钟。当然我没做把第一个参数改小的测试,条件允许的话可测试下。

  • 在处理中,如果不是一直刷新后报错下载不了,数据量小200条都可以导出,但到2000 导出不了,而且立马报错,可能是引入但phpExcel版本低但问题!
  • 不一定都是php-fpm nginx 底层配置的问题,也可能是代码的问题!
posted @ 2020-03-05 16:57  盘思动  阅读(3752)  评论(1编辑  收藏  举报