如何转换yyyy-MM-dd HH:mm:ss到yyyy-MM-ddTHH:mm:ssZ?

时间:2015-01-30 16:09:06

标签: php date datetime utc

我需要将日期时间发送到API。

我想这样做,但它不起作用。

$startDate = DateTime::createFromFormat('yyyy-MM-dd\THH:mm:ssZ', '2014-06-13 14:30:00');

不幸的是,我得到了2014-06-13T13:30:00.000Z,而我需要它采用以下格式:yyyy-MM-ddTHH:mm:ssZ

我不知道我哪里出错了。任何帮助或建议将不胜感激!

1 个答案:

答案 0 :(得分:6)

您尝试同时转换和阅读日期,而不是DateTime::createFromFormat()的工作方式。事实上,由于DateTime支持您的开始日期格式,因此您根本不需要该方法。

只需将日期作为参数传递给DateTime(),然后相应地对其进行格式化。 (如评论中所述,请确保您的日期为UTC)。

echo (new DateTime('2014-06-13 14:30:00'))->format('Y-m-d\TH:i:s\Z');