您的位置:首页 > 编程语言 > PHP开发

关于PHPExcel类占用内存问题

2015-09-19 11:55 495 查看
最近在帮一家公司做后台excel导出功能,使用的工具类是phpexcel,因为这个类功能比较强大、全面。

但是遇到下面一个问题:

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

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

得出以下几个措施:

1.设置PHP缓存

//设置缓存方法
PHPExcel_Settings::setCacheStorageMethod();


2.设置最大执行时间

//设置最大执行时间
set_time_limit(0);


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

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

//设置内存限制
ini_set('memory_limit', '256M');


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

至此,问题已解决。

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

相关链接:
http://blog.sina.com.cn/s/blog_4ec7952d0101fcrd.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: