欢迎访问宙启技术站
智能推送

10个必备的PHP日期函数,快速精准处理时间

发布时间:2023-06-18 11:54:26

在PHP开发中,时间处理是经常被用到的一个方面,因为网页和应用通常需要显示时间戳,或者根据日期进行排序和筛选。PHP可以轻松处理日期和时间,在此介绍10个常用的PHP日期函数,帮助您快速精准地处理时间。

1. date()

这个函数可以生成格式化的时间字符串。第一个参数规定了日期格式,第二个参数规定了时间戳。如果没有指定第二个参数,默认将返回当前的时间戳。

示例:

echo date("Y/m/d");

这将显示当前日期,格式为“年/月/日”。

2. strtotime()

这个函数可以将日期字符串转换为时间戳。因此,如果您有一个日期字符串并需要进行日期运算,可以使用strtotime()将其转换为时间戳。

示例:

echo strtotime("2022-01-01");

这将把“2022-01-01”转换为时间戳。

3. time()

这个函数返回当前的Unix时间戳。Unix时间戳是从1970年1月1日开始的秒数。可以将它与其他时间戳进行比较或计算。

示例:

echo time();

这将返回当前的Unix时间戳。

4. mktime()

这个函数根据提供的小时、分钟、秒、月、日和年生成一个特定的日期时间戳。

示例:

echo mktime(0,0,0,1,1,2022);

这将返回2022年1月1日的时间戳。

5. checkdate()

这个函数检查给定的年份、月份和日期是否合法。如果日期不合法,则返回false,否则返回true。

示例:

if (checkdate(2, 29, 2021)) {
    echo "合法日期";
} else {
    echo "不合法日期";
}

这将检查2021年2月29日是否合法。实际上它是不合法的,因为2021年不是闰年。

6. strftime()

这个函数将日期和时间格式化为字符串。第一个参数指定了日期和时间格式,第二个参数指定了时间戳。可以使用本地化格式处理日期和时间。

示例:

setlocale(LC_TIME, "zh_CN");
echo strftime("%A %d %B %Y");

这将显示当前日期和星期。

7. date_diff()

这个函数计算两个日期之间的差异。第一个参数是要比较的第一个日期对象,第二个参数是要比较的另一个日期对象。返回一个DateInterval对象。

示例:

$date1 = new DateTime("2022-01-01");
$date2 = new DateTime("2022-02-01");
$diff = date_diff($date1, $date2);
echo $diff->format("%R%a 天");

这将计算2022年1月1日和2022年2月1日之间的天数差异。

8. date_parse()

这个函数将一个日期时间字符串解析为日期时间组件的关联数组。

示例:

print_r(date_parse("2022-01-01 00:00:00"));

这将返回“2022-01-01 00:00:00”的日期时间组件。

9. DateTime::createFromFormat()

这个函数从一个格式化的日期字符串中创建一个DateTime对象。

示例:

$date = DateTime::createFromFormat('Y-m-d H:i:s', '2022-01-01 00:00:00');
echo $date->format('Y-m-d H:i:s');

这将从字符串中创建一个DateTime对象,并将其格式化为“年-月-日 时:分:秒”的格式。

10. DateTime::add()

这个函数在DateTime对象上加上一定的时间间隔。

示例:

$date = new DateTime("2022-01-01");
$date->add(new DateInterval("P2D"));
echo $date->format("Y-m-d");

这将增加2天并格式化日期。