PHP日期和时间函数——你必须知道的10个
PHP 是用于 Web 开发的一种脚本语言。日期和时间函数是 PHP 中的核心功能之一,它们可以用来操作和格式化日期和时间,以及计算日期和时间之间的差异。在本文中,我们将介绍 PHP 中的 10 个日期和时间函数,这些函数在 Web 开发中经常使用。
1. date()
date() 函数用于格式化日期和时间。
语法:
date(format,timestamp)
其中,format 参数是日期和时间格式的字符串,timestamp 参数是可选的,表示要格式化的时间戳,如果未提供 timestamp 参数,则默认使用当前时间。
示例:
echo date("Y/m/d"); // 输出:2022/10/28
echo date("H:i:s"); // 输出:14:22:34
echo date("Y-m-d H:i:s"); // 输出:2022-10-28 14:22:34
2. time()
time() 函数用于获取当前 Unix 时间戳(自 1970 年 1 月 1 日 00:00:00 GMT 以来经过的秒数)。
语法:
time()
示例:
echo time(); // 输出:1667010154
3. strtotime()
strtotime() 函数用于将日期字符串转换为 Unix 时间戳。
语法:
strtotime(time_string,[now])
其中,time_string 参数是日期字符串,now 参数是可选的,表示转换时参考的时间戳,如果未提供 now 参数,则默认使用当前时间。
示例:
echo strtotime("2022-10-28"); // 输出:1667049600
echo strtotime("next Monday"); // 输出:1667500800
4. mktime()
mktime() 函数用于获取指定日期和时间的 Unix 时间戳。
语法:
mktime(hour,minute,second,month,day,year,[is_dst])
其中,hour、minute、second 分别表示小时、分钟、秒钟,month、day、year 分别表示月份、日期、年份,is_dst 参数是可选的,表示是否考虑夏令时。
示例:
echo mktime(0,0,0,7,1,2022); // 输出:1654041600
5. checkdate()
checkdate() 函数用于检查给定的日期是否合法。
语法:
checkdate(month,day,year)
其中,month、day、year 分别表示月份、日期、年份。
示例:
echo checkdate(2,29,2023); // 输出:false
6. strftime()
strftime() 函数用于格式化本地时间。与 date() 函数类似,但 strftime() 函数支持本地语言环境和时区。
语法:
strftime(format,[timestamp])
其中,format 参数是日期和时间格式的字符串,timestamp 参数是可选的,表示要格式化的时间戳,如果未提供 timestamp 参数,则默认使用当前时间。
示例:
setlocale(LC_TIME, "zh_CN.utf8"); // 设置本地语言环境为中文
echo strftime("%Y年%m月%d日"); // 输出:2022年10月28日
7. getdate()
getdate() 函数用于获取 Unix 时间戳的详细信息,如年份、月份、日期、时、分、秒等。
语法:
getdate([timestamp])
其中,timestamp 参数是可选的,表示要获取信息的时间戳,如果未提供 timestamp 参数,则默认使用当前时间。
示例:
print_r(getdate()); // 输出如下:
/*
Array
(
[seconds] => 22
[minutes] => 44
[hours] => 14
[mday] => 28
[wday] => 5
[mon] => 10
[year] => 2022
[yday] => 300
[weekday] => Friday
[month] => October
[0] => 1667010262
)
*/
8. strtotime()+date()
strtotime() 函数和 date() 函数结合使用,可以轻松地实现一些日期和时间的加减。
示例:
echo date("Y-m-d", strtotime("+1 day")); // 输出明天的日期
echo date("Y-m-d", strtotime("+1 week")); // 输出一周后的日期
echo date("Y-m-d", strtotime("-2 months")); // 输出两个月前的日期
9. DateTime()
DateTime() 类用于处理日期和时间。与传统的日期和时间函数相比,它更具面向对象的特性,并提供了更多的功能和灵活性。
示例:
$datetime = new DateTime();
echo $datetime->format('Y-m-d H:i:s'); // 输出当前日期和时间
$datetime->modify('+1 day');
echo $datetime->format('Y-m-d H:i:s'); // 输出明天的日期和时间
10. DateTimeZone()
DateTimeZone() 类用于处理时区。它提供了获取和设置时区信息的方法,还可以将本地时间转换成任意时区的时间。
示例:
$datetime = new DateTime('now', new DateTimeZone('Asia/Shanghai'));
echo $datetime->format('Y-m-d H:i:s'); // 输出当前北京时间
$datetime->setTimezone(new DateTimeZone('America/New_York'));
echo $datetime->format('Y-m-d H:i:s'); // 输出当前纽约时间
以上就是 PHP 中的 10 个日期和时间函数,它们可以满足大多数 Web 开发的需求。如果你还没有使用过这些函数,建议在项目中尝试一下,相信它们会大大提高你的开发效率。
