程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP獲得內存使用狀態memory_get_usage()函數

PHP獲得內存使用狀態memory_get_usage()函數

編輯:關於PHP編程

在php中為你提供memory_get_usage函數,可以檢查到你服務器當前所使用的內存情況,有了這個函數我們可以實時的檢查服務器狀態了,下面我來介紹memory_get_usage用法。

格式化memory_get_usage()輸出

 代碼如下 復制代碼

<?php
function convert($size){
$unit=array('b','kb','mb','gb','tb','pb');
return @round($size/pow(1024,($i=floor(log($size,1024)))),2).' '.$unit[$i];
}
echo convert(memory_get_usage(true));
?>

輸出:256 kb

PHP memory_get_usage() 函數還可以有個參數,$real_usage,其值為布爾值。默認為 FALSE,表示得到的內存使用量不包括該函數(PHP 內存管理器)占用的內存;當設置為 TRUE 時,得到的內存為不包括該函數(PHP 內存管理器)占用的內存。

 代碼如下 復制代碼

if (!function_exists('memory_get_usage')) 

 {
     function memory_get_usage() 

     {

        $pid = getmypid();

       if (IS_WIN) 

       {

            exec('tasklist /FI "PID eq ' . $pid . '" /FO LIST', $output);

             return preg_replace('/[^0-9]/', '', $output[5]) * 1024;

         } 

         else

        {

           exec("ps -eo%mem,rss,pid | grep $pid", $output);

           $output = explode(" ", $output[0]);

           return $output[1] * 1024;

         }

    }

}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved