大佬教程收集整理的这篇文章主要介绍了php获取目标函数执行时间示例,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
写了一个类用来测试目标函数的执行时间。以下是类的定义代码:
/**
* function getTime()
* 根据时间模式,获取时间戳
* @param $timeModel 时间模式,默认:微秒
* @return int 时间戳
*/
private function getTime($timeModel = 'MS') {
if ($timeModel == 'MS') {
return microtime();
} else if ($timeModel == 'S') {
return time();
} else {
return microtime();
}
}
/**
* function testOnce()
* 测试目标函数一次,返回运行时间
* @param $functionName 目标函数名
* @param $timeModel 时间模式,默认:微秒
* @return double 目标函数运行一次的时间(很随机)
*/
public function testOnce($functionName,$timeModel = 'MS') {
$startMicroTime = $this->getTime($timeModel);
$functionName();
$endMicroTime = $this->getTime($timeModel);
$costMicroTime = $endMicroTime - $startMicroTime;
return $costMicroTime;
}
/**
* function test()
* 测试目标函数多次,返回运行时间(平均值)
* @param $functionName 目标函数名
* @param $timeModel 时间模式,默认:微秒
* @return double 目标函数运行的时间
*/
public function test($functionName,$timeModel = 'MS') {
$@R_533_10586@lMicroTimes = 0;
for ($i = 1; $i <= $this->testTimes; $i++) {
$@R_533_10586@lMicroTimes += $this->testOnce($functionName);
}
return $@R_533_10586@lMicroTimes / $this->testTimes;
}
}
?>
以下是类的测试代码:
一开始我是直接使用 microtime() 获取时间的,后来考虑到如果想获得单位是秒的运行时间,这样写就不够多态了,然后我就写了一个getTime() 的函数来获取不同单位的时间戳,不过这样,貌似目标函数的运行时间变长了,可能是因为 getTime() 函数中的判断占用了一部分时间。
以上是大佬教程为你收集整理的php获取目标函数执行时间示例全部内容,希望文章能够帮你解决php获取目标函数执行时间示例所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。