当前位置:首页 > 代码学习 > PHP获取页面运行时间以及数据库查询次数

PHP获取页面运行时间以及数据库查询次数

代码学习 / 星之宇 / 2012-6-24 12:22 / 浏览:22593 / 评论:5

现在越来越多的PHP程序,衡量一个程序的好坏,运行的时间是一个重要的标志。
如何在php中获取php的运行时间呢?这里要用到php的microtime() 函数。
microtime() 函数返回当前 Unix 时间戳和微秒数。语法:microtime(get_as_float)


这里我说一种获取php的运行时间的思路:在php程序结束的时间减去开始的时候的时间等于运行的时间。
大部分人多采用这个思路来获取运行时间的,以下代码仅供参考:

php文件开头

<?php
function get_microtime_array()
{  
    return explode(' ', microtime());
}
$start_time_array = get_microtime_array();//获取php开始的时间
?>

php文件结尾

<?php
$end_time_array = get_microtime_array();//获取php结束时间
$time=$end_time_array[0] + $end_time_array[1] - $start_time_array[0] - $start_time_array[1];//计算运行时间,单位秒
echo round($time*1000);//换算成毫秒取整输出
?>

这样可以大概知道这个php程序的运行时间,简单的说:运行时间越小,服务器和程序也就越好。
由于php一般多用数据库mysql,那么数据库查询次数也直接影响了php的执行效率和数据库的负载。减少了数据库的查询次数,php的执行效率和数据库的负载要小很多了。

那么怎么查看数据库的查询次数呢?
我的思路是这样的,一般现在php程序多有独立的数据库类,定义查询次数为$queryCount = 0 在查询语句中加上计算查询次数就可以,$queryCount++;//每运行次查询$queryCount就加1,最后只要获取$queryCount的数值输出就可以了。

具体事例:(wordpress)

<?php echo get_num_queries(); //数据库查询次数 ?>
<?php timer_stop(1);//运行时间 ?>

 

目前有 5 条评论

    • QQ
    • 填好QQ,点击获取自动填写昵称和邮箱
    • 昵称
    • 邮箱
    • 网址

    红色石头 2013-03-19 14:262楼

    具体怎么弄啊,还是搞不懂~评论

    星之宇 2013-03-19 14:30

    @红色石头:这个要分别加在模版的header和footer这里的回复

    红色石头 2013-03-19 14:31

    @星之宇:数据库连接数了?回复

    星之宇 2013-03-19 14:41

    @红色石头:emlog只有在module.php添加一个函数就可以了。回复

    永利博 2012-06-24 14:351楼

    好东东,嘿嘿.评论