避免内存泄漏的几点建议:
①.、尽早释放无用对象的引用.
使用mysql_unbuffered_query(), 可以避免内存的立即占用, 如果返回的结果存放到array中也是完全没有问题的, 也不会出现php查询mysql数据量过大时导致内存溢出问题.
这种情况一般会在单表数据表数据库比较大的时候出现,建议在使用的过程中限制单次读取数据条数,或者对数据表进行分表
你看看你的程序里面有没有用到递归,或者有没有死循环.
另外解决此类问题的主要思想就是分而治之
我觉得是foreach的机制的问题
foreach($arr as $key=$value){}这里面的$value是每次循环是把数组中元素的值赋值给$value
而foreach($arr as $key=$value){}这里的$value是引用赋值.
两者有什么区别呢?带引用的$value可以$value='aaa';直接改变元素的值;还有一个重要的,就是最后一次循环之后$value的值还会保留;
你这里是foreach($obj as $value){}对象默认是引用传值;所以循环过后要unset($obj);
php里还有一个函数clearstatcache(true)清楚文件状态缓存,虽然受影响的函数没有simplexml_load_file(),不过还是可以试试;
还有mysql系列的函数很多也不是很稳定,有时候不知道会出什么问题;建议用PDO;
深感php里面的坑太多了,稍不注意就跳进去了.
以上就是土嘎嘎小编为大家整理的php防止内存溢出相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!