PHP日期格式转换

时间:2010-11-26 18:46:31

标签: php

在日期转换方面需要帮助:

现有日期格式:

Wed, 01 Dec 2010 00:00:00 -0500

(Day, DD MMM YYYY HH:MM:SS GMT-0500)

更改为:

2010-11-29T04:59:59-05:00

(YYYY-MM-DD(T)HH:MM:SS GMT-05:00)

如何在PHP中处理?

php中是否有任何可用的功能。

请帮助

3 个答案:

答案 0 :(得分:3)

strtotime()man page)& date()man page)或DateTime类(man page)应该能够处理此问题。

echo date('Y-m-d\TH:i:sZ', strtotime('Wed, 01 Dec 2010 00:00:00 -0500'));
echo date('c', strtotime('Wed, 01 Dec 2010 00:00:00 -0500')); // as mentioned by Anthony

echo DateTime('Wed, 01 Dec 2010 00:00:00 -0500')->format('Y-m-d\TH:i:sZ');
echo DateTime('Wed, 01 Dec 2010 00:00:00 -0500')->format('c'); // as mentioned by Anthony

答案 1 :(得分:2)

首先,您希望日历字符串采用纪元格式,以便您可以使用date函数。我最喜欢的方法是strtotime函数:

$epoch_date = strtotime($original_date_string);

现在,您可以使用date函数输出它,无论您喜欢什么。在您的情况下,我相信您正在寻找ISO 8601,它内置于该功能中:

 $new_date_string = date('c', $epoch_date);
 echo $new_date_string;

答案 2 :(得分:1)

date('Y\-m\-d\Th:i:s \G\M\TP');

这将返回:
2010-11-26T02:49:24 GMT-05:00

使用date()格式化要简单得多!

您可以在此处阅读所有相关信息http://php.net/manual/en/function.date.php