前端之家收集整理的这篇文章主要介绍了
PHP应用程序耗尽内存,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在为一个爬虫编写一组类,它抓取一个起始页,根据参数拉出三个
链接(使用Simple
Html Dom Parser找到允许使用类似选择器的jquery),抓取这些
页面,然后转到第2页,选择接下来3页.当前最大
页面是57次.
不用说我得到了:
允许的内存大小为50331648字节耗尽错误消息.
有什么方法可以避免用完memmory.
为了让你知道,在拉入第一页的内容后,我运行了一个go()函数,它连续地拉入页面,直到达到$this-> maxpages.我想我可以在实例化类时运行循环,但这会有所帮助.
您可以调整内存限制:
ini_set('memory_limit','128M');
但我会尝试让脚本使用更少的内存.确保您释放不再需要存在的任何内容的数据/引用.
memory_get_usage()可用于调试内存使用量累积的位置.
此外,如果您不使用PHP 5.3,您可以考虑升级,因为它的垃圾收集器更好.