PHP 限制記憶體使用與檢視
阿新 • • 發佈:2019-01-04
在執行PHP程式,通常會遇到“Fatal Error: Allowed memory size of xxxxxx bytes exhausted”的錯誤, 這個意味著PHP指令碼使用了過多的記憶體,並超出了系統對其設定的允許最大記憶體
<?php phpinfo(); ?>
在裡面搜尋 memory_limit 可看到伺服器配置的限制記憶體大小。
其是在 php.ini 中設定
也可以在程式碼中設定
ini_set('memory_limit','128M');
//memory_get_usage();
$m1 = memory_get_usage();
echo '<br /> m1:',$m1;//58096
$a = 'hello';
$b = str_repeat($a,1000);
$m2 = memory_get_usage();
echo '<br /> m2:',$m2;//63424
unset($b);
$m3 = memory_get_usage();
echo '<br /> m3:',$m3;//58456
上面的程式碼可以檢視方法中,變數所佔的記憶體。
------------------
如果報記憶體不夠怎麼辦呢。
在程式碼中臨時加大記憶體申請
再用 unset() 清空變數 。可以一試。