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