PHP 單一實例設計模式與new 物件,消耗記憶體的比較
class form { private static $oForm; // 單一實例 public static function instance() { if (!self::$oForm) { self::$oForm = new form(); } return self::$oForm; } public function select($aArray, $aOption) { // do something ...... } public function radio($aArray, $aOption) { // do something ...... } public function checkbox($aArray, $aOption) { // do something ...... } } $aStatus[0] = '上架'; $aStatus[1] = '下架'; for ($i=0; $i<10000; $i++) { $oForm = form::instance(); echo $oForm->select($a, $o); } echo memory_get_usage(); // 1480256 for ($i=0; $i<10000; $i++) { echo form::select($a, $o); } echo memory_get_usage(); // 1479656 for ($i=0; $i<10000; $i++) { $oForm = new form(); return $oForm->{$m}($a, $o); } echo memory_get_usage(); // 1480016
Prev post
MySQL 在40多萬筆資料中 LIKE 關鍵字搜尋的的速度
下一篇
清除瀏覽器快取的工具