在php中转换时间戳

在php中转换时间戳,php,Php,我从TwitterAPI获得了这种格式的时间戳 Fri Dec 28 20:06:38 +0000 2012 我想把它转换成像这样的标准时间戳格式 2012-12-10 16:20:18 我对php中的日期相当陌生。如何操作???您可以使用将初始字符串转换为UNIX时间戳,然后再将其转换回字符串: strftime('%Y-%m-%d %H:%M:%S', strtotime('Fri Dec 28 20:06:38 +0000 2012')); 该调用返回字符串2012-12-28 21

我从TwitterAPI获得了这种格式的时间戳

Fri Dec 28 20:06:38 +0000 2012
我想把它转换成像这样的标准时间戳格式

2012-12-10 16:20:18
我对php中的日期相当陌生。如何操作???

您可以使用将初始字符串转换为UNIX时间戳,然后再将其转换回字符串:

strftime('%Y-%m-%d %H:%M:%S', strtotime('Fri Dec 28 20:06:38 +0000 2012'));

该调用返回字符串2012-12-28 21:06:38-即您正在查找的内容。

如果使用php<5.2.0(某些共享主机),请使用和的组合

您可以使用:

我之所以喜欢
DateTime
,是因为它提供了很好的oop实现,并且使处理程序员非常头疼的日期变得更容易。有关这门课的更多信息,请阅读我已经参考过的手册。

使用这个

 $originalDate = "Fri Dec 28 20:06:38 +0000 2012";
 echo $newDate = date("Y-m-d h:i:s", strtotime($originalDate));

工作示例

我不理解这两种格式之间的区别,但我可能读错了。你确定第二种格式正确吗?我试着眯着眼睛看,但两种格式读起来都一样。你的两种格式似乎是一样的。。![明确指定输入格式,不依赖解析器的智能猜测..+1,也优于PHP如果PHP低于5.3,那么IMHO
strotime
date
组合是一种好方法。@PLB:好的,它们仍然在一些服务器上继续:(不过,为了让人们远离使用旧php版本的糟糕托管公司,不应该支持这些:p
$date = new DateTime('Fri Dec 28 20:06:38 +0000 2012');
echo $date->format('Y-m-d H:i:s');
 $originalDate = "Fri Dec 28 20:06:38 +0000 2012";
 echo $newDate = date("Y-m-d h:i:s", strtotime($originalDate));