| 
       大家可通常用的microtime()获取页面开始和结束时的时间并相减的话,计算结果是页面运行 所经历的一段时间,但这并不一定是该页面自身运行的时间 
实例代码如下: 
	
	- <?php 
 
	-  
 
	-  
 
	-  
 
	- function fn(){ 
 
	-  list($a,$b) = explode(' ',microtime());  
 
	-  return $a+$b; 
 
	- } 
 
	-  
 
	- $start_time = fn(); 
 
	-  
 
	- for($i=0;$i<10000000;$i++){ 
 
	-   
 
	- } 
 
	-  
 
	- $end_time = fn(); 
 
	-  
 
	- echo $end_time-$start_time; 
 
	-  
 
	- echo '<br />'; 
 
	- $t = $end_time-$start_time; 
 
	- echo round($t,2); 
 
	- ?> 
 
	 
 
使用microtime()获取页面开始和结束时的时间并相减的话,计算结果是页面运行  
所经历的一段时间,但这并不一定是该页面自身运行的时间.因为可能存在多个PHP脚  
本页面共同执行的情况,所以我觉得那个方法是不准确的 
下面从网上找到一个关于php中计算页面程序运行时间的实例有需要的朋友可参考一下. 
最近写了一个程序运行的时间计算类,供大家参考: 
实例代码如下: 
	
	- class Timer {   
 
	-     private $StartTime = 0; 
 
	-     private $StopTime  = 0; 
 
	-     private $TimeSpent = 0; 
 
	-     function start(){ 
 
	-         $this->StartTime = microtime();   
 
	-     }   
 
	-     function stop(){ 
 
	-         $this->StopTime = microtime();   
 
	-     }   
 
	-     function spent(){ 
 
	-         if ($this->TimeSpent) {   
 
	-             return $this->TimeSpent;   
 
	-         } else { 
 
	-          list($StartMicro, $StartSecond) = explode(" ", $this->StartTime); 
 
	-          list($StopMicro, $StopSecond) = explode(" ", $this->StopTime); 
 
	-             $start = doubleval($StartMicro) + $StartSecond; 
 
	-             $stop = doubleval($StopMicro) + $StopSecond; 
 
	-             $this->TimeSpent = $stop - $start; 
 
	-             return substr($this->TimeSpent,0,8)."秒"; 
 
	-         }   
 
	-     }   
 
	- }   
 
	- $timer = new Timer();   
 
	- $timer->start(); 
 
	-  
 
	- $timer->stop(); 
 
	- echo "程序运行时间为:".$timer->spent(); 
 
	 
 
再看简化程序 计算页面加载时间 
实例代码如下: 
	
	- <?php 
 
	- class runtime 
 
	- { 
 
	-         var $StartTime = 0; 
 
	-         var $StopTime = 0; 
 
	-         function get_microtime() 
 
	-         { 
 
	-                 list($usec, $sec) = explode(' ', microtime()); 
 
	-                 return ((float)$usec (float)$sec); 
 
	-         } 
 
	-          
 
	-         function start() 
 
	-         { 
 
	-                 $this->StartTime = $this->get_microtime(); 
 
	-         } 
 
	-          
 
	-         function stop() 
 
	-         { 
 
	-                 $this->StopTime = $this->get_microtime(); 
 
	-         } 
 
	-          
 
	-         function spent() 
 
	-         { 
 
	-                 return round(($this->StopTime - $this->StartTime) * 1000, 1); 
 
	-         } 
 
	- } 
 
	-  
 
	- $runtime= new runtime; 
 
	- $runtime->start();  
 
	-  
 
	- $a = 0; 
 
	- for($i=0; $i<1000000; $i ) 
 
	- { 
 
	-         $a = $i; 
 
	- } 
 
	-  
 
	- $runtime->stop(); 
 
	- echo "页面执行时间: ".$runtime->spent()." 毫秒"; 
 
	- ?> 
 
	 
 
      
      (责任编辑:admin) |