使用PHP从怪异的twitter格式格式化日期

使用PHP从怪异的twitter格式格式化日期,php,datetime,date-conversion,Php,Datetime,Date Conversion,通过twitterapi,我可以获得某个东西在twitter上发布的日期和时间 Jul 25 17:42:55 +0000 2013 现在,在PHP中,如何将其输入标准unix: 2013-6-25 17:42:55 我不确定是否需要处理datetime,但我认为有一种更简单的方法可以做到这一点,而不必使用str\u replace和substr来解析和更改内容,只需将它传递给strotime。请注意,这包括时区+0000,因此时间也将相对于您的时区进行转换 <?php $date =

通过twitterapi,我可以获得某个东西在twitter上发布的日期和时间

Jul 25 17:42:55 +0000 2013
现在,在PHP中,如何将其输入标准unix:

2013-6-25 17:42:55

我不确定是否需要处理datetime,但我认为有一种更简单的方法可以做到这一点,而不必使用
str\u replace
substr
来解析和更改内容,只需将它传递给
strotime
。请注意,这包括时区+0000,因此时间也将相对于您的时区进行转换

<?php
$date = "Jul 25 17:42:55 +0000 2013";
echo date("Y-m-d H:i:s", strtotime($date));
使用类,特别是静态方法


工作示例-

我想这也行,我有时间工作,但它不适合我的需要。感谢您的输入。另外,您可能想要
H
,而不是
H
,因此,2015年1月27日星期二21:53:43+0000被翻译为2015-01-27 15:53:43。小时不一样。@Jeremy时间会相对于您的时区进行转换。请阅读我的帖子:-)Twitter订阅源邮票看起来像“Mon Sep 08 15:19:11+0000 2014”,正确的格式是$d=\DateTime::createFromFormat('d M d H:i:s P Y',(字符串)$x->created_at);
$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');