在PHP中的日期字符串

时间:2012-10-17 00:02:52

标签: php datetime

我花了几天时间试图谷歌它没有运气。 我有一个日期存储在字符串$ dob ='2012-10-06 10:45:45 +0000'; 我正在尝试使用以下代码将其转换为日期:

$timezone = 'Europe/Brussels';  
$d = DateTime::createFromFormat("Y-m-d H:i:s P",$dob ,new DateTimeZone($timezone)); 
    echo $d->format("Y-m-d");

但是我收到以下错误消息: 致命错误:在非对象上调用成员函数format() 如何按以下格式从字符串创建DateTime:2012-10-06 10:45:45 +0000? 谢谢你的帮助...

2 个答案:

答案 0 :(得分:4)

您的日期中看起来有些空格不在您的模式中。另外,P => O因为P有一个冒号,其中O只有4位数。

请尝试"Y-m-d H: i: s O"

您可能会收到错误,因为createFromFormat()失败并且您实际上在$ d中没有DateTime对象。

如果不能解决问题,请查看DateTime::getLastErrors()。这可以帮助解释这个问题。

这是一个指向PHP沙箱的链接,我的建议有效:http://sandbox.onlinephpfunctions.com/code/ee06a025fb9ab47f136eba221382c8b2f84be703

您必须单击代码下方的运行按钮。

答案 1 :(得分:-1)

YY-MM-DD HH: II: SS tzcorrection