在日期转换方面需要帮助:
现有日期格式:
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中是否有任何可用的功能。
请帮助
答案 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