一、获取当前时间详细信息
使用getdate()函数可以获取到当前时间的详细信息,代码如下:
$date = getdate(); print_r($date);
运行结果如下:
Array ( [seconds] => 13 [minutes] => 10 [hours] => 9 [mday] => 29 [wday] => 2 [mon] => 6 [year] => 2021 [yday] => 179 [weekday] => Tuesday [month] => June [0] => 1624943413 )
getdate()函数会返回一个关联数组,数组的每一个元素都是日期或时间的一部分,比如$year、$weekday、$seconds等。其中,$wday表示星期几,0表示星期日,1表示星期一,以此类推。
二、获取指定时间信息
除了获取当前时间,getdate()函数也可以获取指定时间的详细信息,只需要将指定时间作为参数传入即可。
$date = getdate(mktime(0, 0, 0, 7, 4, 1776)); print_r($date);
运行结果如下:
Array ( [seconds] => 0 [minutes] => 0 [hours] => 0 [mday] => 4 [wday] => 4 [mon] => 7 [year] => 1776 [yday] => 185 [weekday] => Thursday [month] => July [0] => -6106017600 )
上述例子中,我们获取了1776年7月4日这一天的详细信息。
三、使用getdate()函数格式化时间
除了获取详细时间信息,getdate()函数还可以格式化时间输出。比如,我们可以将获取到的时间戳转化为人类可读的格式。
$date = getdate(); echo $date['weekday'].', '.$date['month'].' '.$date['mday'].', '.$date['year'];
运行结果如下:
Tuesday, June 29, 2021
在上述例子中,我们使用了weekday、month和mday这些数组元素来组成一个完整的日期显示。
四、使用getdate()函数获取一周中的第几天和第几周
使用getdate()函数不仅可以获取某天详细信息,还可以获得这天是一周中的第几天以及当月的第几周。下面是一个示例代码:
$date = getdate(); $dayOfWeek = $date["wday"]; $weekOfMonth = ceil($date["mday"]/7); echo "Today is ".$dayOfWeek." day of the week and ".$weekOfMonth." week of the month";
运行结果如下:
Today is 2 day of the week and 5 week of the month
在上述例子中,我们使用wday来获取当前是一周中的第几天,使用mday和ceil函数来获取当月的第几周。
五、使用getdate()函数获取毫秒数
在PHP7及以上版本中,getdate()函数可以获取到毫秒数信息。使用方式如下:
$mil = round(microtime(true) * 1000); $date = getdate($mil / 1000); echo "Milliseconds: ".$mil."
"; print_r($date);
运行结果如下:
Milliseconds: 1624943413127 Array ( [seconds] => 13 [microseconds] => 127000 [minutes] => 10 [hours] => 9 [mday] => 29 [wday] => 2 [mon] => 6 [year] => 2021 [yday] => 179 [weekday] => Tuesday [month] => June [0] => 1624943413.127 )
在上述例子中,我们使用microtime()函数获取当前时间的微秒数,再将其转化为毫秒数。
六、小结
在本文中,我们介绍了getdate()函数的用法,包括获取当前时间详细信息、获取指定时间信息、使用getdate()函数格式化时间、获取一周中的第几天和第几周、以及获取毫秒数。getdate()函数是一个非常实用的PHP时间函数,开发者可以基于其灵活的用法对时间进行处理。