2009-03-19 10:26

動態調整 PHP 最大記憶體上限(memory_limit)

在使用 php 寫 script 去做排程時
這類的 script 執行次數通常不會很多
可是卻會使用大量的 memory
雖然一個好的程式不應該如此肥胖
但為了開發上的效率和整體結構
就允許這小小的肥胖吧!

雖然可以在 php.ini 中設定 memory_limit 的值
但這並不是一個很好的方法
因為在 php.ini 中屬於全域設定
這代表每一支 script 都可以使用這麼大 memory
再開發時沒注意到的話
這只會讓胖胖的程式愈來愈多
這不是一件好事

所以呢?(廢話這麼多)
在程式中動態調整所需的 memory 會是比較好的作法
只要在程式一剛開始的地方做設定就好了
這樣也不用為了少數幾支肥胖的程式去調整 php.ini

<?php
ini_set("memory_limit","2048M");
//.......
?>

0 回應: