php实现的Timer页面运行时间监测类

本文实例讲述了php实现的Timer页面运行时间监测类及其用法,是一款非常实用的php类文件。分享给大家供大家参考。具体分析如下:

php Timer页面运行时间监测类,可按不同key监测不同的运行时间。

Timer.class.php类文件如下:

<?php /** Timer class, 计算页面运行时间,可按不同key计算不同的运行时间 *  Date:  2014-02-28 *  Author: fdipzone *  Ver:  1.0 * *  Func: *  public start    记录开始时间 *  public end     记录结束时间 *  public getTime   计算运行时间 *  pulbic printTime  输出运行时间 *  private getKey    获取key *  private getMicrotime 获取microtime */  class Timer{ // class start    private $_start = array();   private $_end = array();   private $_default_key = 'Timer';   private $_prefix = 'Timer_';    /** 记录开始时间   * @param String $key 标记   */   public function start($key=''){     $flag = $this->getKey($key);     $this->_start[$flag] = $this->getMicrotime();   }    /** 记录结束时间   * @param String $key 标记   */   public function end($key=''){     $flag = $this->getKey($key);     $this->_end[$flag] = $this->getMicrotime();   }    /** 计算运行时间   * @param String $key 标记   * @return float   */   public function getTime($key=''){     $flag = $this->getKey($key);     if(isset($this->_end[$flag]) && isset($this->_start[$flag])){       return (float)($this->_end[$flag] - $this->_start[$flag]);     }else{       return 0;     }   }    /** 输出页面运行时间   * @param String $key 标记   * @return String   */   public function printTime($key=''){     printf("%srun time %f ms/r/n", $key==''? $key : $key.' ', $this->getTime($key)*1000);   }    /** 获取key   * @param String $key 标记   * @return String   */   private function getKey($key=''){     if($key==''){       return $this->_default_key;     }else{       return $this->_prefix.$key;     }   }    /** 获取microtime   */   private function getMicrotime(){     list($usec, $sec) = explode(' ', microtime());     return (float)$usec + (float)$sec;   } } // class end ?>

demo示例代码如下:

<?php  require 'Timer.class.php';  $timer = new Timer(); $timer->start();  $timer->start('program1'); usleep(mt_rand(100000,500000)); $timer->end('program1'); $timer->printTime('program1');  $timer->start('program2'); usleep(mt_rand(100000,500000)); $timer->end('program2'); $timer->printTime('program2');  $timer->end(); $timer->printTime();  ?>

demo运行输出:

program1 run time 163.285971 ms program2 run time 100.347042 ms run time 264.035940 ms 

完整实例源码点击此处本站下载。

希望本文所述对大家的php程序设计有所帮助。

php技术php实现的Timer页面运行时间监测类,转载需保留来源!

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。