用strtotime()函数比较两个时间的大小实例详解
在PHP中,两个时间是不可以直接进行比较,因为时间是由年、月、日、时、分、秒组成的,所以,如果需要将两个时间进行比较的话,我们首先要做的就是将时间解析为时间戳的格式
比较两个时间的大小实例
代码如下
<?php header('Content-Type:text/html;charset=utf-8'); $time1 = date('Y-m-d H:i:s'); $time2 = date('2020-5-20 13:14:00'); echo 'time1: '.$time1.'<br>'; echo 'time2: '.$time2.'<br>'; if(strtotime($time1) - strtotime($time2) < 0 ){ echo $time1.'早于'.$time2; }else if(strtotime($time1) - strtotime($time2) > 0){ echo $time2.'早于'.$time1; }else{ echo $time1.'等于'.$time2; }
运行结果如下图:
time1: 2020-05-22 02:45:57
time2: 2020-5-20 13:14:00
2020-5-20 13:14:00早于2020-05-22 02:45:57
php microtime() 函数实现计算页面脚本的运行时间实例详解
平常在我们浏览网站的时候,经常会用到搜索的功能,在搜索信息时,细心的用户会发现,在搜索结果的最下方,一般都有“搜索时间为x秒”的字样,这是利用PHP的microtime() 函数。
实例
下面我们就来计算一段代码的运行时间,首先声明一个函数run_time(),该函数返回当前的时间,精确到微妙。在PHP代码段运行之前先运行一次该函数,同时将返回值保存到变量
$start_time中,随后运行PHP代码段。当代码段运行完毕后再次调用run_time()函数,同时将返回值保存到变量$end_time中,这两个变量的差值就是该PHP代码段运行的时间
示例代码如下:
<?php header('Content-Type:text/html;charset=utf-8'); function run_time(){ list($mesc,$sec)=explode(' ',microtime()); return ((float)$mesc+(float)$sec); } $start_time = run_time(); $time1 = time(); $time2 = strtotime('2020-10-1'); $time3 = strtotime('2021-3-14'); $sub1 = ceil(($time2-$time1)/(60*60*24)); $sub2 = ceil(($time3-$time1)/(60*60*24)); echo '离国庆还有:'.$sub1.'天<br>'; echo '离婚礼还有:'.$sub2.'天<br>'; $end_time = run_time(); echo '程序共使用:'.($end_time-$start_time).'秒';
示例运行结果如下图:
离国庆还有:132天
离婚礼还有:296天
程序共使用:7.6055526733398E-5秒
示例详解:microtime(get_as_float) 默认返回字符串 "microsec sec" ,其中 sec 为自 Unix 纪元(0:00:00 January 1, 1970 GMT)起的秒数,microsec 为微秒部分。如果 get_as_float 参数设置为 TRUE,则返回一个浮点数,表示自 Unix 纪元起精确到微秒的以秒为单位的当前时间。
使用PHP时间日期函数strtotime()实现倒计时的功能实例详解
倒计时小程序实例,代码如下
<?php header('Content-Type:text/html;charset=utf-8'); $time1 = time(); $time2 = strtotime('2020-10-1'); $time3 = strtotime('2021-3-14'); $sub1 = ceil(($time2-$time1)/(60*60*24)); $sub2 = ceil(($time3-$time1)/(60*60*24)); echo '离国庆还有:'.$sub1.'天<br>'; echo '离婚礼还有:'.$sub2.'天<br>';
代码运行结果:
离国庆还有:132天
离婚礼还有:296天
在上面的示例中我们使用了ceil()函数,ceil()函数:是上舍入为最接近的整数。