程序员人生 网站导航

PHP获得内存使用状态memory_get_usage()函数

栏目:php教程时间:2014-06-08 11:41:33

在php中为你提供memory_get_usage函数,可以检查到你服务器当前所使用的内存情况,有了这个函数我们可以实时的检查服务器状态了,下面我来介绍memory_get_usage用法,格式化memory_get_usage()输出,代码如下:

  1. <?php  
  2. function convert($size){  
  3. $unit=array('b','kb','mb','gb','tb','pb');  
  4. return @round($size/pow(1024,($i=floor(log($size,1024)))),2).' '.$unit[$i];  
  5. }  
  6. echo convert(memory_get_usage(true));  
  7. ?> 
  8. //输出:256 kb 

PHP memory_get_usage() 函数还可以有个参数,$real_usage,其值为布尔值,默认为 FALSE,表示得到的内存使用量不包括该函数(PHP 内存管理器)占用的内存;当设置为 TRUE 时,得到的内存为不包括该函数(PHP 内存管理器)占用的内存。

例代码如下:

  1. if (!function_exists('memory_get_usage'))  
  2.  {  
  3.      function memory_get_usage()  
  4.      { 
  5.         $pid = getmypid(); 
  6.        if (IS_WIN)  
  7.        { 
  8.             exec('tasklist /FI "PID eq ' . $pid . '" /FO LIST'$output); 
  9.              return preg_replace('/[^0-9]/'''$output[5]) * 1024; 
  10.          }  
  11.          else 
  12.         { 
  13.            exec("ps -eo%mem,rss,pid | grep $pid"$output); 
  14.            $output = explode(" "$output[0]); 
  15.            return $output[1] * 1024; 
  16.          } 
  17.     } 
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐