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 底层配置的问题,也可能是代码的问题!
相信坚持的力量,日复一日的习惯.