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

使用PHP的date函数格式化时间和日期的实践

发布时间:2023-06-23 18:28:36

在 PHP 开发中,使用日期和时间非常常见。PHP 提供了 date 函数,可以格式化指定的日期和时间。本文将介绍如何使用 PHP 的 date 函数来格式化时间和日期,并提供一些常用的格式化字符串。

1. 格式化当前时间

获取当前时间可以使用 PHP 的 date 函数,格式如下:

date(format[, timestamp])

其中,format 是要格式化的时间和日期的格式,timestamp 是可选的时间戳,表示要格式化的时间。如果不传入 timestamp 参数,则默认为当前时间。

例如,以下代码可以格式化当前时间,输出年月日、时分秒和星期:

echo date('Y年m月d日 H:i:s l');

输出:

2019年02月21日 14:50:23 Thursday

这里,格式化字符串 'Y年m月d日 H:i:s l' 分别表示:

- Y:四位数的年份,如 2019

- m:两位数的月份,如 02

- d:两位数的日期,如 21

- H:24小时制的小时数,如 14

- i:分钟数,如 50

- s:秒数,如 23

- l:英文星期几,如 Thursday

2. 格式化时间戳

如果有指定的时间戳,可以将其格式化成需要的样式。时间戳是指自 1970 年 1 月 1 日 00:00:00 GMT 到指定时间之间的秒数。

以下代码将时间戳格式化为年月日、时分秒和星期:

$timestamp = strtotime('2019-02-21 14:50:23');
echo date('Y年m月d日 H:i:s l', $timestamp);

输出:

2019年02月21日 14:50:23 Thursday

这里,strtotime 函数将字符串 '2019-02-21 14:50:23' 转换成时间戳,然后将其传递给 date 函数。

3. 常用格式化字符串

下面列举一些常用的格式化字符串(注意大小写区分):

- Y:四位数的年份

- y:两位数的年份

- m:两位数的月份

- n:无前导零的月份,如 1

- M:英文简写的月份,如 Feb

- F:英文完整的月份,如 February

- d:两位数的日期

- j:无前导零的日期,如 5

- D:英文简写的星期几,如 Mon

- l:英文完整的星期几,如 Monday

- a:小写的上午或下午,如 am

- A:大写的上午或下午,如 AM

- H:24小时制的小时数,如 14

- h:12小时制的小时数,如 2

- i:分钟数

- s:秒数

例如,以下代码将时间戳格式化为英文完整的日期时间:

$timestamp = time();
echo date('l, F jS Y \a\t h:i:s A', $timestamp);

输出:

Thursday, February 21st 2019 at 02:50:23 PM

4. 总结

PHP 的 date 函数可以方便地格式化时间和日期,使用非常广泛。在使用时,需要注意格式化字符串中各个字符的含义和大小写区分。通过使用常用的格式化字符串,就可以轻松地按需求格式化出所需要的日期和时间了。