【发布时间】:2013-03-13 18:51:18
【问题描述】:
我在循环中使用 PHPQuery(HTML 解析器),并且每次都使用 phpQuery::unloadDocuments() 取消设置前一个文档。循环简化为:
while(...){
$doc="parsed stuff";
...
unset($doc);
}
但是,由于脚本在一段时间后内存不足,因此存在内存泄漏。网上搜索了一下,有人建议,为了避免内存泄漏,我应该把它包装在一个函数中,所以我改成这样:
function r(){
$doc="parsed stuff";
...
unset($doc);
}
while(...)
r();
现在,内存泄漏停止了。这是为什么呢?
【问题讨论】:
-
你的意思是为什么现在没有内存泄漏?
-
循环中定义的任何其他变量?
-
silentboy:完全是 Koterpillar:我想有很多变量,超过 50 个。教派:5.3
标签: php memory-leaks phpquery