php 计算PHP脚本执行时间例子

在PHP中,大多数的时间格式都是以UNIX时间戳表示的,而UNIX时间戳是以s(秒)为最小的计量时间的单位。这对某些应用程序来说不够精确,所以可以调用microtime()返回当前UNIX时间戳和微妙数。该函数的原型如下:

mixed microtime([bool get_as_float]); //返回当前UNIX时间戳和微妙数

可以为该函数提供一个可选的布尔型参数,如果在调用时不提供这个参数,本函数以“msec sec”的格式返回一个字符串。其中sec是自UNIX纪元到现在的秒数,而msec是微妙部分,字符串的两部分都是以秒为单位返回的。如果给出了get_as_float参数并且其值等价于TRUE,microtime()将返回一个浮点数。在小数点前面还是以时间戳格式表示,而小数点后面则表示微妙的值。但要注意参数get_as_float是在PHP5.0版本中新加的,所以在PHP5以前的版本中,不能直接使用该参数直接请求一个浮点数。在下面的例子中通过两次调用microtime()函数,计算运行PHP脚本所需要的时间。代码如下所示:

 代码如下 复制代码
<?php
//生命一个计算脚本运行时间的类
class Timer{
private $startTime = 0; //保存脚本开始执行时的时间(以微秒的形式保存)
private $stopTime = 0; //保存脚本结束执行时的时间(以微秒的形式保存)
 
//在脚本开始处调用获取脚本开始时间的微秒值
function start(){
$this->startTime = microtime(true); //将获取的时间赋值给成员属性$startTime
}
//脚本结束处嗲用脚本结束的时间微秒值
function stop(){
$this->stopTime = microtime(true); //将获取的时间赋给成员属性$stopTime
}
//返回同一脚本中两次获取时间的差值
function spent(){
//计算后4舍5入保留4位返回
return round(($this->stopTime-$this->startTime),4);
}
}
 
$timer= new Timer();
$timer->start(); //在脚本文件开始执行时调用这个方法
usleep(1000); //脚本的主题内容,这里可以休眠一毫秒为例
$timer->stop(); //在脚本文件结束处调用这个方法
 
echo "执行该脚本用时<b>".$timer->spent()."</b>";
 
?>

在以上脚本中,声明一个用于计算脚本执行时间的类Timer。需要在脚本执行开始的位置调用该类中的start()方法,获取脚本开始执行时的时间。并在脚本执行结束的位置调用该类中的stop()方法,获取脚本运行结束时的时间。再通过访问该类中的spent()方法,就可以获取运行脚本所需的时间。

后面我又打到一个类,下面我们一起来看看吧

 代码如下 复制代码
**
 * 获取某段程序运行所用的时间
 *
 */
class runtime
{
 var $StartTime = 0;
 var $StopTime = 0;
 
 /**
  * 获取系统时间
  *
  * @return unknown
  */
 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();   //程序结束的时候用这个方法取一次时间
 }
 /**
  * 计算出程序运行所用时间
  *
  * @return unknown
  */
 function spent()
 {
    // return round(($this->StopTime - $this->StartTime) * 1000, 1);
 
  return round(($this->StopTime - $this->StartTime), 4); //用结束时候的时间减去开始时候的时间,就是程序运行的时间了
 }
}
时间: 2024-10-24 00:33:47

php 计算PHP脚本执行时间例子的相关文章

PHP中使用微秒计算脚本执行时间例子_javascript技巧

在PHP中,大多数的时间格式都是以UNIX时间戳表示的,而UNIX时间戳是以s(秒)为最小的计量时间的单位.这对某些应用程序来说不够精确,所以可以调用microtime()返回当前UNIX时间戳和微妙数.该函数的原型如下: 复制代码 代码如下: mixed microtime([bool get_as_float]); //返回当前UNIX时间戳和微妙数 可以为该函数提供一个可选的布尔型参数,如果在调用时不提供这个参数,本函数以"msec sec"的格式返回一个字符串.其中sec是自U

asp.net计算每个页面执行时间的方法

  这篇文章主要介绍了asp.net计算每个页面执行时间的方法,涉及asp.net操作时间的相关技巧,非常具有实用价值,需要的朋友可以参考下 本文实例讲述了asp.net计算每个页面执行时间的方法.分享给大家供大家参考.具体分析如下: 这里的asp.net代码可实现计算每个页面的执行时间,无需要修改页面的相关代码,这段代码会给所有的页面统一加上执行时间显示 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 2

asp.net计算每个页面执行时间的方法_实用技巧

本文实例讲述了asp.net计算每个页面执行时间的方法.分享给大家供大家参考.具体分析如下: 这里的asp.net代码可实现计算每个页面的执行时间,无需要修改页面的相关代码,这段代码会给所有的页面统一加上执行时间显示 public class PerformanceMonitorModule : IHttpModule { public void Init(HttpApplication context) { context.PreRequestHandlerExecute += delegat

php不设置脚本执行时间的方法

今天在手册上了解到.有个函数可以不限制脚本执行时间.看手册上: set_time_limit(0); The maximum execution time, in seconds. If set to zero, no time limit is imposed.                 impose 是"推行"的意思

Powershell检查网站响应并计算执行时间例子_PowerShell

有时候你需要知道命令的执行时间,例如,你可以使用Invoke-WebReques查看网站的响应,再使用Measure-Command计算执行的时间. 复制代码 代码如下: $url = 'http://www.powershell.com'     # track execution time: $timeTaken = Measure-Command -Expression {   $site = Invoke-WebRequest -Uri $url }   $milliseconds =

PowerShell计算脚本执行时间的实现方法_PowerShell

另一个方法是设置两个时间快照和结束时间,计算它们的时差.这将告诉你Get-Hotfix执行了多久,得到的输出数据里将包含脚本执行的时间: 复制代码 代码如下: $start = Get-DateGet-HotFix$end = Get-DateWrite-Host -ForegroundColor Red ('Total Runtime: ' + ($end - $start).TotalSeconds) 文章出处:http://www.pstips.net/

PHP定时执行程序脚本的例子总结

今天分享一个超简单直接的PHP定时执行的小代码,关掉浏览器,PHP脚本也能后继续执行! 用web浏览器定时刷新今天想到用sleep函数来实现php 自动定时执行.只要php能运行即可. 由于代码少,这里给个例子直接解释:  代码如下 复制代码 <?php ignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行 set_time_limit(20);//程序超时时间,单位秒:通过set_time_limit(0)可以让程序无限制的执行下去:当用了set_time_limi

asp.net 通过httpModule计算页面的执行时间

创建一个类库,建立如下类: 复制代码 代码如下: using System; using System.Collections.Generic; using System.Web;//引用web命名空间 using System.Text; namespace TimerHttpModule { public class Class1:IHttpModule//继承IHttpModules { public void Init(HttpApplication application)//实现IH

防google搜索统计脚本执行时间。

google|脚本|统计|执行 <?php // class PHP_timer开始class PHP_timer {     // 用来收集脚本执行过程中的信息    var $points = array();        // 在脚本的开始处调用这个函数    function start() {        // 请看后面的addmarker函数        $this->addmarker("Start");    }    // end function