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

PHP日期函数:10种格式化日期和时间的技巧

发布时间:2023-06-25 14:31:06

在 PHP 中,有很多内置的日期函数可用于格式化日期和时间。无论是在构建网站还是在开发 Web 应用程序时,都需要使用这些函数来操作时间。以下是 10 种常用的日期格式和时间格式化技巧。

1. 显示当前日期和时间

使用 date() 函数可以轻松地显示当前的日期和时间。例如,可以使用以下代码:

echo date("Y-m-d H:i:s");

上面的代码将输出当前的日期和时间,格式为年-月-日 时:分:秒。

2. 显示特定日期和时间

如果想要显示特定日期和时间,可以使用 mktime() 函数来创建一个时间戳。时间戳是 Unix 操作系统中的一种时间表示形式,表示从 1970 年 1 月 1 日 00:00:00 开始的秒数。以下是一个例子:

$timestamp = mktime(0, 0, 0, 1, 1, 2021);
echo date("Y-m-d", $timestamp);

上面的代码将输出为 2021-01-01,这是一个特定日期的格式化示例。

3. 在日期中显示月份的名称

如果想要显示英文月份的名称而不是数字,可以在日期格式字符串中使用 “F” 格式声明。以下是一个例子:

echo date("F j, Y");

上面的代码将输出为 “November 1, 2021”。

4. 从时间戳中提取小时和分钟

如果要提取特定时间戳中的小时和分钟,可以使用 date() 函数与“g:i a”格式类结合。例如:

$timestamp = time();
echo date("g:i a", $timestamp);

上面的代码将输出当前的小时和分钟,例如 “2:30 pm”。

5. 显示上午/下午

与上面的例子类似,还可以使用“a”格式声明来显示上午或下午。例如:

echo date("h:i:s a");

上面的代码将输出当前的时间,格式为时:分:秒 上午/下午。

6. 显示日期区间

可以使用 date_diff() 函数计算两个日期之间的天数,并在输出中显示日期区间。例如:

$date1 = new DateTime("2021-01-01");
$date2 = new DateTime("2021-01-31");
$interval = $date1->diff($date2);
echo $interval->days;

上面的代码将输出为 30,表示 2021 年 1 月 1 日到 2021 年 1 月 31 日有 30 天。

7. 计算两个日期之间的差

如果需要计算两个日期之间的差(即天数、小时数、分钟数等),可以使用 strtotime() 函数和 strtotime() 函数。以下是一个例子:

$date1 = strtotime("2021-01-01");
$date2 = strtotime("2021-01-31");
$diff = $date2 - $date1;
echo floor(($diff) /(60*60*24));

上面的代码将输出为 30,表示 2021 年 1 月 1 日到 2021 年 1 月 31 日有 30 天。

8. 显示 UTC 时间

可以使用 gmdate() 函数来显示 UTC 时间。例如,以下代码将输出当前的 UTC 时间:

echo gmdate("Y-m-d H:i:s");

9. 将字符串转换为时间戳

可以使用 strtotime() 函数将日期和时间字符串转换为时间戳。例如:

$timestamp = strtotime("2021-01-01 12:00:00");
echo date("Y-m-d H:i:s", $timestamp);

上面的代码将输出特定的日期和时间,格式为年-月-日 时:分:秒。

10. 显示特定时区的时间

如果需要显示特定时区的时间,可以使用 date_default_timezone_set() 函数设置时区。例如,以下代码将显示纽约的时间:

date_default_timezone_set("America/New_York");
echo date("Y-m-d H:i:s");

上面的代码将输出当前的日期和时间,格式为年-月-日 时:分:秒,而时区则为美国纽约。