加入收藏 | 设为首页 | 会员中心 | 我要投稿 成都站长网 (https://www.028zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP日期函数microtime()用法及实例

发布时间:2022-12-13 14:05:24 所属栏目:PHP教程 来源:转载
导读: 文章目录
microtime()函数是用于检测程序执行时间的函数,也是PHP内置的时间函数之一,在PHP中可以用于对程序执行时间的判断,以及相同功能函数的执行效率高低快慢的判断。本文主要从micro

文章目录

microtime()函数是用于检测程序执行时间的函数,也是PHP内置的时间函数之一,在PHP中可以用于对程序执行时间的判断,以及相同功能函数的执行效率高低快慢的判断。本文主要从microtime()函数语法及一个实例代码来记载microtime()函数的用法及功能。

microtime()函数语法

microtime(bool `$get_as_float` = ?): mixed

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

根据上面microtime()函数语法可知内microtime()函数内有两个值,一个值是布尔类型数据,第二个是浮点型数据,当我们在microtime()函数内传入true或者数字1为真的时候,输出microtime()函数返回的是一个浮点型带微秒数的当前时间戳;如果microtime()函数内不写布尔值或者是传入false的时候,输出microtime()函数返回的是微秒数 整数时间戳,先输出了浮点型的微秒数,中间有了一个空格,然后又将整数类型的时间戳输出出来了。

实例代码:

<?php
$start_time = microtime();//记录程序开始时候的时间戳
for($i=0;$i<1000;$i++){
    echo $i.'本次是$I变量的第'.$i.'次循环输出'.'本次输出的时间戳是'.time().'
'; } $end_time = microtime(true); //计算本次循环程序的执行时间,用结束时间减去开始时间就得到了本次程序的执行所耗费的时间。 $time = $end_time-$start_time; echo $start_time,'
'; echo $end_time,'
'; echo '本次$i循环输出10000次测试程序执行时间为'.$time; ?>

在上述代码块和截图中,可以看到当我不在microtime()中写入任何布尔值时,返回的就是浮点型的微秒数当时时间戳。

microtime()函数使用实例

<?php
$start_time = microtime(true);//记录程序开始时候的时间戳
for($i=0;$i<1000;$i++){
    echo $i.'本次是$I变量的第'.$i.'次循环输出'.'本次输出的时间戳是'.time().'
'; } $end_time = microtime(true); //计算本次循环程序的执行时间,用结束时间减去开始时间就得到了本次程序的执行所耗费的时间。 $time = $end_time - $start_time; echo '我是For循环结束时的浮点型时间戳'.$end_time.'
'; echo '我是For循环开始时的浮点型时间戳'.$start_time.'
'; echo '本次$i循环输出10000次测试程序执行时间'.$time; ?>

上面实例代码块中的实例思路如下:

我先是命名一个For循环开始时的变量,并赋值为microtime(true),获取到for循环体的开始前带浮点型的时间戳,然后写入For循环体,再在For循环体外命令一个变量并赋值为microtime(true),获取到For循环结束后的带浮点型的时间戳格式,最后再用结束时带浮点型的时间戳减去开始时的带浮点型的时间戳,最后就得到了For循环程序执行的时间。

最后测试的程序执行时间为0.0020020008087158微秒。第一块代码块是上午写的,第二块代码块是晚上写的php实例,所以两个代码块执行后,时间戳出入有点大。

microtime()函数使用场景

microtime()函数使用场景在文章开头已经提到过,可以测试程序执行所花费的时间,使用microtime()函数应该同样可以测试出一个页面加载耗时时间,同时还可以测试出相似函数执行过程中的耗时时间,从而对比选择出最优的函数。

以上就是本次microtime()函数的学习笔记小结,microtime()函数用法在测试方法还是很有用处的,很值得学习及掌握。

(编辑:成都站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!