zoukankan      html  css  js  c++  java
  • php使用microtime(true)查看代码执行时间

    <?PHP
    $t1=microtime(true);
    for( $i=1;$i<=1000;$i++){
        echo $i."*";
    }
    echo "<br>";
    $t2=microtime(true);
    echo $t1."<br>";
    echo $t2."<br>";
    echo "消耗时间:".round($t2-$t1,3);

    输出:

    1543284899.817
    1543284899.818
    消耗时间:0.001

    microtime() 函数返回当前 Unix 时间戳和微秒数。

          如果带个 true 参数, 返回的将是一个浮点类型

    round() 取出小数点后 3 位

    =======================================================================

    如何计算一段php程序代码的执行消耗时间?

    对于系统时间,可能很多同学对php的time()函数并不陌生,可惜time()函数只返回自从 Unix 纪元(格林威治时间 1970 年 1 月 1 日 00:00:00)到当前时间的秒数.
    没错,是秒.我们一段php程序代码执行耗时可能并不超过一秒,所以time()并不适用.php提供了一个更为精确的时间函数microtime():
    microtime — 返回当前 Unix 时间戳和微秒数.

    格式: mixed microtime ([ bool $get_as_float ] )

    函数以 “msec sec” 的格式返回一个字符串,sec 是自 Unix 纪元(0:00:00 January 1, 1970 GMT)起到现在的秒数,msec 是微秒部分。
    如果输入参数为true,microtime() 将返回一个浮点数。

    例如:echo microtime(); 会返回:0.08845800 1376983061。

    echo microtime(true);则返回:1376983061.08845800

    在dedecms和康盛的UCenter代码中使用了microtime()然后字符串分隔

    在thinkphp3.2框架代码中使用了microtime(true);

    好了,然后的事情很简单,为了免于对返回的结果做复杂的字符串转换,我们设定microtime()输入参数为true,使得其返回的结果为浮点数。
    然后在程序开始和结束分别计算一次,两次结果相减便是程序执行的时间。(PHP手册里有一句话:永远不要比较两个浮点数是否相等。 )
    最后使用number_format格式化浮点数。此方法仅供测试,结果不一定精确。

    原文:https://blog.csdn.net/eflyq/article/details/19130141

  • 相关阅读:
    HDU1058Humble Numbers(DP)
    HDU1285确定比赛名次(拓扑排序)
    HDU2602Bone Collector(DP,0/1背包)
    HDU1869六度分离(最短路floyd)
    HDU3342Legal or Not(拓扑)
    Dijkstra不能得到含有负权边图的单源最短路径
    HDU1069Monkey and Banana(DP)
    HDU1176免费馅饼(DP)
    DAG上的动态规划
    网络分析中数据包结构的定义
  • 原文地址:https://www.cnblogs.com/lxwphp/p/10024821.html
Copyright © 2011-2022 走看看