gmdate()

1. 定义

该函数与date()函数类似,格式化一个日期时间。 返回被格式化后的日期字符串。

注:

  • date()函数格式化的是本地时区的时间
  • gmdate()函数格式化的是格林威治标准时间(GMT)

2. 语法

gmdate ( string $format [, int $timestamp ] ) : string

3. 参数说明

参数 可选性 数据类型 描述
$format 必需 字符串 符合规范的解析日期/时间的格式化字符串
$timestamp 可选 整型 整型的时间戳,默认为当前时间(time()

其中,$format参数有以下几种符号格式规则(注意,下面的结果有些与当前时间有关!):

符号 说明
Y 四位数字的年份表示
y 两位数字的年份表示
L 是否为闰年,如果是闰年则返回1,不是则返回0
o ISO-8601 格式年份数字。这和 Y 的值相同,只除了如果 ISO 的星期数(W)属于前一年或下一年,则用那一年
FM 全写或简写的英文月份表示
mn 有前导零或无前导零的数字月份表示
t 指定的月份的天数
W ISO-8601 格式年份中的第几周,每周从星期一开始
z 一年中的第几天,从0开始
w 星期中的第几天
N ISO-8601 格式数字表示的星期中的第几天
dj 有前导零或无前导零的一个月中的第几天表示
S 使用两个字母的缩写表示一个月的第几天,会自动忽略日期后面的stndrdth
Dl 全写或简写的星期表示
Aa 表示一天中的上午或下午
B Swatch Internet 标准时
gh 有前导零或无前导零的12小时制的小时
GH 有前导零或无前导零的24小时制的小时
i 有前导零的分钟表示
s 有前导零的秒数表示
u 毫秒表示,至多精确到六位数
e 时区标识,例如UTCGMTAtlantic/Azores
I 是否为夏令时,是的话为1,不是则为0
O 与格林威治时间相差的小时数
P 与格林威治时间(GMT)的差别,小时和分钟之间有冒号分隔
T 本机所在的时区
Z 时差偏移量的秒数。UTC 西边的时区偏移量总是负的,UTC 东边的时区偏移量总是正的
c ISO 8601 格式的日期
r RFC 822 格式的日期
U 从 Unix 纪元(January 1 1970 00:00:00 GMT)开始至今的秒数

4. 示例

<?php

// gmdate()
// 格式化一个日期时间

$res = gmdate('Y-m-d H:i:s T');// 格林威治标准时间
var_dump($res);// 输出:string(23) "2019-08-26 06:10:37 GMT"

$res = date('Y-m-d H:i:s T');// 本地时间
var_dump($res);// 输出:string(23) "2019-08-26 14:10:37 CST"