Home  >  Article  >  php教程  >  关于PHPExcel类占用内存有关问题

关于PHPExcel类占用内存有关问题

WBOY
WBOYOriginal
2016-06-06 19:43:041263browse

关于PHPExcel类占用内存问题 最近在帮一家公司做后台excel导出功能,使用的工具类是phpexcel,因为这个类功能比较强大、全面。 但是遇到【本文来自鸿网互联 (http://www.68idc.cn)】下面一个问题: 当导出数据量达到一定数量级的时候,比如说1000条,服务器出

关于PHPExcel类占用内存问题

最近在帮一家公司做后台excel导出功能,使用的工具类是phpexcel,因为这个类功能比较强大、全面。

但是遇到【本文来自鸿网互联 (http://www.68idc.cn)】下面一个问题:

当导出数据量达到一定数量级的时候,比如说1000条,服务器出现卡顿、白屏现象,若再增大导出数量,则出现了502错误网关的提示。

经过百度、一些国内论坛的排查,

得出以下几个措施:

1.设置PHP缓存

<span style="color: #008000;">//设置缓存方法
</span>PHPExcel_Settings::setCacheStorageMethod();

2.设置最大执行时间

<span style="color: #008000;">//</span><span style="color: #008000;">设置最大执行时间</span>
<span style="color: #008080;">set_time_limit</span>(0);

但是经过调试,都不起作用,仍然报了502错误。


最后,经过查看内存信息,我把问题根源追索转向了内存,于是做了如下设置:

<span style="color: #008000;">//</span><span style="color: #008000;">设置内存限制</span>
<span style="color: #008080;">ini_set</span>('memory_limit', '256M');

接下来是激动的结果,excel成功导出了!

 

至此,问题已解决。

phpexcel确是一个功能强大的类,但是在性能优化方面却有很大的提升空间,希望不久的将来可以推出一个轻量级的excel使用类 ^_^

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn