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()方法,就可以获取运行脚本所需的时间。
相关推荐
-
php中计算时间差的几种方法
一个简单的例子就是计算借书的天数,这需要php根据每天的日期进行计算,下面就来谈谈实现这种日期计算的几种方法: (1) 如果有数据库就很容易了!若是MSSQL可以使用触发器!用专门计算日期差的函数datediff()便可! 若是MYSQL那就用两个日期字段的差值计算的计算结果保存在另一个数值型字段中!用时调用便可! (2)如果没有数据库,那就得完全用php的时间日期函数!下面主要说明之: 例:计算1998年5月3日到1999-6-5的天数: <?php $startdate=mktime("
-
php实现用于计算执行时间的类实例
本文实例讲述了php实现用于计算执行时间的类.分享给大家供大家参考.具体如下: 有了这个php类,计算函数或者一段代码的执行时间就简单了 <?php class c_Timer { var $t_start = 0; var $t_stop = 0; var $t_elapsed = 0; function start() { $this->t_start = microtime(); } function stop() { $this->t_stop = microtime(); }
-
php中计算程序运行时间的类代码
复制代码 代码如下: class Timer { private $StartTime = 0;//程序运行开始时间 private $StopTime = 0;//程序运行结束时间 private $TimeSpent = 0;//程序运行花费时间 function start(){//程序运行开始 $this->StartTime = microtime(); } function stop(){//程序运行结束 $this->StopTime = microtime(); } funct
-
php计算当前程序执行时间示例
复制代码 代码如下: <?$pagestartime=microtime();?><!--网页内容 start-->网页内容......<!--网页内容 end--><?$pageendtime = microtime();$starttime = explode(" ",$pagestartime);$endtime = explode(" ",$pageendtime);$totaltime = $endtime[0]-
-
PHP中UNIX时间戳和日期间的转换与计算实例
UNIX时间戳是保存日期和时间的一种紧凑简洁的方法,是大多数UNIX系统中保存当前日期和时间的一种方法,也是在大多数计算机语言中表示日期和时间的一种标准格式.以32位整数表示格林威治标准时间,例如,使用证书11230499325表示当前时间的时间戳.UNIX时间戳是从1970年1月1日零点(UTC/GMT的午夜)开始起到当前时间所经过的秒数.1970年1月1日零点作为所有日期计算的基础,这个日期通常成为UNIX纪元. 因为UNIX时间戳是一个32位的数字格式,所以特别适用于计算机处理,例如计算两
-
php计算函数执行时间的方法
本文实例讲述了php计算函数执行时间的方法.分享给大家供大家参考.具体如下: 我们可以通过在程序的前后分别记录开始和结束时间,两个时间差就是程序的执行时间. <?php $long_str = "this is a test to see how much time md5 function takes to execute over this string"; // start timing from here $start = microtime(true); // func
-
在php和MySql中计算时间差的方法
最近在研究自己爱围脖的时候就要计算到恋爱天数,这需要php根据每天的日期进行计算,下面就来谈谈实现这种日期计算的几种方法: (1) 如果有数据库就很容易了!若是MSSQL可以使用触发器!用专门计算日期差的函数datediff()便可! 若是MYSQL那就用两个日期字段的差值计算的计算结果保存在另一个数值型字段中!用时调用便可! (2)如果没有数据库,那就得完全用php的时间日期函数! 下面主要说明之: 例:计算1998年5月3日到1999-6-5的天数: 复制代码 代码如下: $startdat
-
php简单计算页面加载时间的方法
本文实例讲述了php简单计算页面加载时间的方法.分享给大家供大家参考.具体实现方法如下: 简单的把开始时间放在页面头部,结束时间放在页面尾部,计算页面加载时间 $start = time(); // put a long operation in here sleep(2); $diff = time() - $start; print "This page needed $diff seconds to load :-)"; // if you want a more exact v
-
php计算给定时间之前的函数用法实例
本文实例讲述了php计算给定时间之前的函数用法.分享给大家供大家参考.具体如下: 这里给定一个时间,计算这个时间在多久前,比如:2天前,1年前 <?php function prettyDate($date){ $time = strtotime($date); $now = time(); $ago = $now - $time; if($ago < 60){ $when = round($ago); $s = ($when == 1)?"second":"se
-
PHP中使用微秒计算脚本执行时间例子
在PHP中,大多数的时间格式都是以UNIX时间戳表示的,而UNIX时间戳是以s(秒)为最小的计量时间的单位.这对某些应用程序来说不够精确,所以可以调用microtime()返回当前UNIX时间戳和微妙数.该函数的原型如下: 复制代码 代码如下: mixed microtime([bool get_as_float]); //返回当前UNIX时间戳和微妙数 可以为该函数提供一个可选的布尔型参数,如果在调用时不提供这个参数,本函数以"msec sec"的格式返回一个字符串.其中sec是自U
-
PowerShell计算脚本执行时间的实现方法
另一个方法是设置两个时间快照和结束时间,计算它们的时差.这将告诉你Get-Hotfix执行了多久,得到的输出数据里将包含脚本执行的时间: 复制代码 代码如下: $start = Get-DateGet-HotFix$end = Get-DateWrite-Host -ForegroundColor Red ('Total Runtime: ' + ($end - $start).TotalSeconds) 文章出处:http://www.pstips.net/
-
Java中System.currentTimeMillis()计算方式与时间单位转换讲解
一.时间的单位转换 1秒=1000毫秒(ms) 1毫秒=1/1,000秒(s) 1秒=1,000,000 微秒(μs) 1微秒=1/1,000,000秒(s) 1秒=1,000,000,000 纳秒(ns) 1纳秒=1/1,000,000,000秒(s) 1秒=1,000,000,000,000 皮秒(ps) 1皮秒=1/1,000,000,000,000秒(s) 1分钟=60秒 1小时=60分钟=3600秒 二.System.currentTimeMillis()计算方式 在开发过程中,通常很
-
MongoDB 中聚合统计计算--$SUM表达式
我们一般通过表达式$sum来计算总和.因为MongoDB的文档有数组字段,所以可以简单的将计算总和分成两种: 1,统计符合条件的所有文档的某个字段的总和: 2,统计每个文档的数组字段里面的各个数据值的和.这两种情况都可以通过$sum表达式来完成. 以上两种情况的聚合统计,分别对应与聚合框架中的 $group 操作步骤和 $project 操作步骤. 1.$group 直接看例子吧. Case 1 测试集合mycol中的数据如下: { title: 'MongoDB Overview', desc
-
java中的数学计算函数的总结
java中的数学计算函数 Math类: java.lang.Math类中包含基本的数字操作,如指数.对数.平方根和三角函数. java.math是一个包,提供用于执行任意精度整数(BigInteger)算法和任意精度小数(BigDecimal)算法的类. java.lang.Math类中包含E和PI两个静态常量,以及进行科学计算的类(static)方法,可以直接通过类名调用. public static final Double E = 2.7182818284590452354 public
-
JavaScript 网页中实现一个计算当年还剩多少时间的倒数计时程序
看到网上这个程序 发现了处错误这里改正了一下: function counter() { var date = new Date(); var year = date.getFullYear(); var date2 = new Date(year, 11, 30, 23, 59, 59); /*转换成秒*/ var time = (date2 - date) / 1000; var day = Math.floor(time / (24 * 60 * 60)) var hour = Math.
-
ASP.NET中常用输出JS脚本的类实例
本文实例讲述了ASP.NET中常用输出JS脚本的类,针对过去输出js脚本的类进行了一定的改进.在项目开发中非常具有实用价值.分享给大家供大家参考.具体如下: 很多时候在ASP.NET中我们经常需要输出一些JS脚本,比如弹出一个警告窗口,返回到历史页面等JS功能,我看到网上流传得比较广的是马先光写的一个JScript类,这个类基本将经常用到的JS脚本包含了,非常方便,唯一的不足是作者采用的Response.Write(string msg)的办法,这样造成输出的js脚本在<html></h
-
codeigniter显示所有脚本执行时间的方法
本文实例讲述了codeigniter显示所有脚本执行时间的方法.分享给大家供大家参考.具体分析如下: 如果你想显示所有脚本的执行时间,请将下面的代码加入到view里面 <?php echo $this->benchmark- >elapsed_time() ; ?> 也可以使用下面的伪变量 { elapsed_time} 希望本文所述对大家基于codeigniter的php程序设计有所帮助.
-
php中关于长度计算容易混淆的问题分析
本文实例讲述了php中关于长度计算容易混淆的问题.分享给大家供大家参考,具体如下: 经常被php中数组和字符串的字符函数搞晕,下面总结一下: strlen($string)函数:计算字符串的长度: sizeof($string,$mode)函数:它是count()函数的别名,count()函数如下: int count ( mixed var [, int mode] ) 返回 var 中的单元数目,通常是一个 array,任何其它类型都只有一个单元. 对于对象,如果安装了 SPL,可以通过实现
随机推荐
- oblog_4.6_SQL 语句
- Ubuntu 16.04 64位中搭建Node.js开发环境教程
- PostgreSQL教程(八):索引详解
- 详解CentOS安装tomcat并且部署Java Web项目
- 浏览器复制插件zeroclipboard使用指南
- scrollTop 用法说明
- Python生成随机密码的方法
- XSL简明教程(7)XSL 的控制语句
- javabean servlet jsp实现分页功能代码解析
- Android解析服务器端发来的xml数据示例
- sql 时间函数 整理的比较全了
- Transactional replication(事务复制)详解之如何跳过一个事务
- 浅谈Mysql中类似于nvl()函数的ifnull()函数
- 基于jQuery对象和DOM对象和字符串之间的转化实例
- java怎么创建目录(删除/修改/复制目录及文件)代码实例
- javascript 扫雷游戏
- 有趣的JavaScript数组长度问题代码说明
- iOS APP中保存图片到相册时崩溃的解决方法
- C语言学生学籍管理系统课程设计
- jQuery进阶实践之利用最优雅的方式如何写ajax请求