作者:何处逐梦_273 | 来源:互联网 | 2017-05-13 02:31
php中计算页面加载时间几种方法总结。大家可通常用的microtime()获取页面开始和结束时的时间并相减的话,计算结果是页面运行所经历的一段时间,但这并不一定是该页面自身运
大家可通常用的microtime()获取页面开始和结束时的时间并相减的话,计算结果是页面运行
所经历的一段时间,但这并不一定是该页面自身运行的时间
代码如下 |
|
//实例:计算页面运行时加载时间
//分析:页面打开时获取一个时间,加载完成时获取一个时间,运行时间即二者之差
//1.自定义函数
function fn(){
list($a,$b) = explode(' ',microtime()); //获取并分割当前时间戳和微妙数,赋值给变量
return $a+$b;
}
//2.获取开始时间
$start_time = fn();
//5.加载过程
for($i=0;$i<10000000;$i++){
// do nothing;
}
//3.获取结束时间
$end_time = fn();
//4.计算差值
echo $end_time-$start_time;
//5.格式化输出
echo ' ';
$t = $end_time-$start_time;
echo round($t,2);
?>
|
使用microtime()获取页面开始和结束时的时间并相减的话,计算结果是页面运行
所经历的一段时间,但这并不一定是该页面自身运行的时间。因为可能存在多个PHP脚
本页面共同执行的情况,所以我觉得那个方法是不准确的
下面从网上找到一个关于php中计算页面程序运行时间的实例有需要的朋友可参考一下。
最近写了一个程序运行的时间计算类,供大家参考:
代码如下 |
|
class Timer {
private $StartTime = 0;//程序运行开始时间
private $StopTime = 0;//程序运行结束时间
private $TimeSpent = 0;//程序运行花费时间
function start(){//程序运行开始
$this->StartTime = microtime();
}
function stop(){//程序运行结束
$this->StopTime = microtime();
}
function spent(){//程序运行花费的时间
if ($this->TimeSpent) {
return $this->TimeSpent;
} else {
list($StartMicro, $StartSecond) = explode(" ", $this->StartTime);
list($StopMicro, $StopSecond) = explode(" ", $this->StopTime);
$start = doubleval($StartMicro) + $StartSecond;
$stop = doubleval($StopMicro) + $StopSecond;
$this->TimeSpent = $stop - $start;
return substr($this->TimeSpent,0,8)."秒";//返回获取到的程序运行时间差
}
}
}
$timer = new Timer();
$timer->start();
//...程序运行的代码
$timer->stop();
echo "程序运行时间为:".$timer->spent(); |
再看简化程序 计算页面加载时间
代码如下 |
|
class runtime
{
var $StartTime = 0;
var $StopTime = 0;
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();
}
function spent()
{
return round(($this->StopTime - $this->StartTime) * 1000, 1);
}
}
//实例开始
$runtime= new runtime;
$runtime->start();
//你的代码开始
$a = 0;
for($i=0; $i<1000000; $i )
{
$a = $i;
}
//你的代码结束
$runtime->stop();
echo "页面执行时间: ".$runtime->spent()." 毫秒";
?>
|
http://www.bkjia.com/PHPjc/629064.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/629064.htmlTechArticle大家可通常用的microtime()获取页面开始和结束时的时间并相减的话,计算结果是页面运行 所经历的一段时间,但这并不一定是该页面自身运...