用奇怪的推特格式用PHP格式化日期

时间:2013-07-26 03:43:15

标签: php datetime date-conversion

通过Twitter API,我能够获得发送内容的日期时间

Jul 25 17:42:55 +0000 2013

现在,在PHP中,我如何将其纳入标准的unix:

2013-6-25 17:42:55

我不确定处理日期时间的任何事情,但我认为有一种更简单的方法可以做到这一点,而不是通过str_replacesubstr

2 个答案:

答案 0 :(得分:8)

只需将其传递给strtotime即可。请注意,这包括时区+0000,因此时间也将相对于您的时区进行转换。

<?php
$date = "Jul 25 17:42:55 +0000 2013";
echo date("Y-m-d H:i:s", strtotime($date));

答案 1 :(得分:8)

使用DateTime类,特别是静态createFromFormat()方法

$dt = DateTime::createFromFormat('M j H:i:s P Y', 'Jul 25 17:42:55 +0000 2013');
echo $dt->format('Y-m-d H:i:s');

工作示例 - http://codepad.viper-7.com/gLdEll