如何在php中使用时区获取ISO 8601格式的时间戳
基于,2014-04-16T11:16:27.930Z是ISO 8601格式的带有时区的时间戳。 快速研究表明,ISO 8601中的时间戳以+时间间隔(例如+00:00)显示时区 我尝试了日期('c'),显示日期:2014-04-16T06:23:31+00:00如何在php中使用时区获取ISO 8601格式的时间戳,php,date,timestamp,Php,Date,Timestamp,基于,2014-04-16T11:16:27.930Z是ISO 8601格式的带有时区的时间戳。 快速研究表明,ISO 8601中的时间戳以+时间间隔(例如+00:00)显示时区 我尝试了日期('c'),显示日期:2014-04-16T06:23:31+00:00 有谁能告诉我如何在2014-04-16T11:16:27.930Z中显示时间戳,而不是2014-04-16T06:23:31+00:00考虑到维基百科关于UTC偏移量的文章可以定义为小时:分钟定义为小时分钟定义 Z是UTC零偏移的区域
有谁能告诉我如何在2014-04-16T11:16:27.930Z中显示时间戳,而不是2014-04-16T06:23:31+00:00考虑到维基百科关于UTC偏移量的文章可以定义为小时:分钟定义为小时分钟定义 Z是UTC零偏移的区域标识符。因此,“09:30 UTC”表示为“09:30Z”或“0930Z”。“14:45:15 UTC”将是“14:45:15Z”或“144515Z” PHP date方法将参数Z定义为 Z时区偏移量(以秒为单位)。UTC以西时区的偏移量始终为负,UTC以东时区的偏移量始终为正 因此,假设维基百科文章中提到的偏移量以秒为单位,您可以使用date创建自己的
iso8601
。给出了当前服务器时间/日期的示例:
date('Y-m-d\TH:i:s.Z\Z', time());
此外,正如@AndrewIsOffline在评论中提到的,因为使用“c”也会给出ISO 8601日期:
date('c', time());
如果所有其他操作都失败,您可以使用
date()
自己构建它,对吗?是的,但是如何在时间戳中以27.930Z的格式获取时区?谢谢,不是930Z时区定义吗?>ISO 8601中的时区表示为本地时间(未指定位置)、UTC或UTC的偏移量。Wikipedia说:如果时间是UTC,则在时间后直接添加一个Z,不带空格。Z是UTC零偏移的区域标识符。因此,“09:30 UTC”表示为“09:30Z”或“0930Z”。“14:45:15 UTC”将是“14:45:15Z”或“144515Z”。只需执行gmdate('Y-m-d\TH:i:s.u\Z')代码>有点旧,但由于PHP5仅使用'c'作为日期格式将给出完整的ISO8601格式的时间。