2015-08-28 72 views
0
  • 我很努力地将字符串转换为日期。
  • 我通过StackOverflow中提到的不同方法从strtotime()开始迭代,但从未设法正确解析它。
  • 下面是我最近使用DateTime :: createFromFormat的最新努力的最小(非)工作示例。解析日期DateTime :: createFromFormat

    $date = DateTime::createFromFormat('d M Y H:i:s e', '16 Jul 2015 05:00:00 UT'); 
    

    var_dump($date);回报bool(false)

可能有人建议我在做什么错孔拉着我从我的头上剩余的头发? ;-)

回答

1

UT不是有效的时区标识符。你是指UTC?

这工作:

$date = DateTime::createFromFormat('d M Y H:i:s e', '16 Jul 2015 05:00:00 UTC');

+0

太谢谢你了大卫R.和显示屏幕设备的注释。事实证明,我试图解析的rss包括一个不符合标准的时区UT(与UTC相对)。 'str_replace(“UT”,“UTC”,$ date);'解决了这个问题。再次感谢大卫R.发现这一点,我一直想念它! - –

+0

没有概率,很高兴帮助! –

0

你必须考虑你的语言版本,即如果PHP意味着5.4不支持你所提到的日期功能

+0

根据[手册](http://php.net/manual/en/datetime.createfromformat.php),DateTime :: createFromFormat的工作原理是PHP> = 5.3。 –

+0

不,这是不正确的我已经面临同样的问题,因为PHP版本的时间我的PHP版本也5.4但更新我的PHP版本后不工作它正在工作 – Dse

+0

谢谢Dse指出这一点! –