php为什么运行了一段时间后才报内存溢出?
高洛峰
高洛峰 2016-11-10 10:09:05
0
2
990

我一次性从数据库读取了10万条数据,然后循环做一些计算,循环过程中,涉及到的变量都会被下次循环覆盖掉,现在的情况是程序运行了一段时间之后,报内存溢出,为什么不是刚开始的时候就报内存溢出?按照我的理解,我并没有用变量一直去存运算结果,所以如果说内存溢出的话,应该就在一开始就报了啊。

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全員に返信(2)
学霸

php version 5.5+

循环中使用yield关键字,迭代中的中间变量可以不占用额外的内存空间

例:

 for($i = 1; $i 


いいねを押す +0
三叔

解决方案:

ini_set(‘memory_limit’,’1024M’);

问题分析:

=。=没代码怎么分析。。。

可能原因:

读取数据不要时间啊?
变量覆盖之前生成的临时对象就不占内存啊?


いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート