memory_get_usage()函式返回記憶體使用量,memory_get_peak_usage()函式返回記憶體使用峰值,getrusage()返回cup使用情況。但有一點請注意,在這些函式需要在linux上執行。
下面我們來看乙個例項:
echo '開始記憶體:'.memory_get_usage(), '
$tmp = str_repeat('hello', 1000);
echo '執行後記憶體:'.memory_get_usage(), '
unset($tmp);
echo '回到正常記憶體:'.memory_get_usage();
輸出結果:
開始記憶體:147296
執行後記憶體:152456
回到正常記憶體:147296
例子中,我們使用str_repeat()將字串「hello」重複了1000遍,最終來對比前後消耗的記憶體大小。由上面的例子可以看出,要想減少記憶體的占用,可以使用unset() 函式把不再需要使用的變數刪除。類似還有mysql_free_result() 函式,當我們不再需要查詢資料得到的結果集時,可以使用釋放查詢占用的記憶體。
函式memory_get_usage()還可以有個引數,$real_usage,其值為布林值。如果設定為 true,獲取系統分配的真實記憶體尺寸。如果未設定或者設定為 false,將是 emalloc() 報告使用的記憶體量。
在實際web開發中,可以用php memory_get_usage()比較各個方法占用記憶體的高低,來選擇使用哪種占用記憶體小的方法。
函式memory_get_usage()返回的位元組數(單位為 byte(s))。下面這個自定義函式將位元組數轉換成mb更容易閱讀:
function memory_usage() {
$memory = ( ! function_exists('memory_get_usage')) ? '0' : round(memory_get_usage()/1024/1024, 2).'mb';
return $memory;
常用的除錯檢測php**效能的方法有:
memory_get_usage可以分析記憶體占用空間。
用microtime函式就可以分析程式執行時間。
PHP獲取記憶體使用情況
php內建函式memory get usage 能返回當前分配給php指令碼的記憶體量,單位是位元組 byte 在web實際開發中,這些函式非常有用,我們可以使用它來除錯php 效能。memory get usage 函式返回記憶體使用量,memory get peak usage 函式返回記憶體使...
PHP獲取CPU 記憶體使用率
類 class systeminfowindows return path 獲得cpu使用率vbs檔案生成函式 return string 返回vbs檔案路徑 private function getcupusagevbspath 獲得總記憶體及可用物理記憶體json vbs檔案生成函式 retur...
PHP檢測獲取記憶體資訊
php也可以檢測獲取到windows的記憶體資訊,而且 還挺簡單,無意發現的,覺得以後能用上,在此與大家分享。本 將得到總記憶體 初始使用等記憶體資訊 echo 初始 memory get usage 位元組 n for i 0 i 100000 i for i 0 i 100000 i echo ...