您当前的位置: 首页 > 网站编程 > PHP教程 > php获取目标函数执行时间示例

php获取目标函数执行时间示例

作者:不详 来源:网络 发布时间: 2014-08-06 22:05 点击:
这篇文章主要介绍了php获取目标函数执行时间示例,需要的朋友可以参考下 写了一个类用来测试目标函数的执行时间。以下是类的定义代码: 代码如下: ?php /** * class EfficiencyTester * 效率测试器,测试函数的运行时间 * @version 1.0 2013.04.13 * @author Kross */ c

php获取目标函数执行时间示例

  这篇文章主要介绍了php获取目标函数执行时间示例,需要的朋友可以参考下

  写了一个类用来测试目标函数的执行时间。以下是类的定义代码:

  代码如下:

  <?php

  /**

  * class EfficiencyTester

  * 效率测试器,测试函数的运行时间

  * @version 1.0 2013.04.13

  * @author Kross

  */

  class EfficiencyTester {

  /**

  * var $testTimes

  * 测试的次数

  */

  private $testTimes = 1000;

  /**

  * 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') {

  $totalMicroTimes = 0;

  for ($i = 1; $i <= $this->testTimes; $i++) {

  $totalMicroTimes += $this->testOnce($functionName);

  }

  return $totalMicroTimes / $this->testTimes;

  }

  }

  ?>

  以下是类的测试代码:

  代码如下:

  <?php

  require_once('../class/EfficiencyTester.class.php');

  $e = new EfficiencyTester();

  echo $e->test('rand');

  ?>

  一开始我是直接使用 microtime() 获取时间的,后来考虑到如果想获得单位是秒的运行时间,这样写就不够多态了,然后我就写了一个getTime() 的函数来获取不同单位的时间戳,不过这样,貌似目标函数的运行时间变长了,可能是因为 getTime() 函数中的判断占用了一部分时间。
分享到:
本文"php获取目标函数执行时间示例"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4