PHP日期格式化函数date()
PHP日期格式化函数date()是一种常见的日期处理函数,用于格式化日期和时间的字符串输出。它可以将时间戳转换为指定的日期和时间格式,也可以将日期和时间字符串转换为时间戳或解析日期和时间信息。
在PHP中,date()函数的语法如下:
string date ( string $format [, int $timestamp ] )
其中,$format表示需要输出的日期和时间格式,$timestamp表示一个可选的时间戳参数,如果未传入,则默认使用当前时间戳。
下面是$format参数中常用的日期和时间格式字符串:
### 年份
| 格式 | 描述 |
| --- | --- |
| Y | 四位数字的年份(例如:2021) |
| y | 两位数字的年份(例如:21) |
### 月份
| 格式 | 描述 |
| --- | --- |
| F | 月份的完整名称(例如:January、February) |
| M | 月份的简称(例如:Jan、Feb) |
| m | 月份的数字表示,带前导0(例如:01、02、12) |
| n | 月份的数字表示,不带前导0(例如:1、2、12) |
### 日
| 格式 | 描述 |
| --- | --- |
| d | 月份中的天数,带前导0(例如:01、02、31) |
| j | 月份中的天数,不带前导0(例如:1、2、31) |
| l | 星期几的完整名称(例如:Sunday、Monday) |
| D | 星期几的简称(例如:Sun、Mon) |
| w | 星期几的数字表示(0代表星期日,1代表星期一,以此类推) |
### 时间
| 格式 | 描述 |
| --- | --- |
| g | 小时数,12小时制,不带前导0(例如:1、2、12) |
| h | 小时数,12小时制,带前导0(例如:01、02、12) |
| G | 小时数,24小时制,不带前导0(例如:0、2、23) |
| H | 小时数,24小时制,带前导0(例如:00、02、23) |
| i | 分钟数,带前导0(例如:00、01、59) |
| s | 秒数,带前导0(例如:00、01、59) |
| A | 上午或下午(例如:AM、PM) |
| a | 上午或下午(例如:am、pm) |
例如,要将当前时间戳输出为"2021年9月1日 星期三 上午11:37"的格式,只需使用以下代码:
echo date("Y年n月j日 l A h:i", time());
在使用date()函数进行日期格式化时,还需要注意一些其他的细节:
1. 如果未传入时间戳参数,date()函数将使用当前时间来进行格式化。
2. 如果时间戳参数为0,date()函数将通过time()函数获得当前时间戳进行格式化。
3. 如果使用的时间格式字符串中包含无法识别的字符,它们将被原样输出。
4. date()函数返回格式化后的日期字符串,如果需要使用其他格式来输出,则需要使用相应的输出函数对其进行处理,如echo()、print_r()等。
总结来说,PHP的日期格式化函数date()是一个十分实用的函数,它提供了丰富的日期和时间格式化选项,能够满足大部分的日期输出需求,用它可以轻松地将时间戳转化为想要的日期格式。
