PHP中的日期函数

时间:2012-05-20 05:17:42

标签: php date

另一个简单的问题。我发现这个非常酷的代码片段:

$date_str = "Jan 14th 2011";
$date = date_parse_from_format('M jS Y', $date_str);
echo $date->format('Y-m-d');

但是当我在计算机上运行它时会出现致命错误:在非对象行3上调用成员函数格式()。

代码是从Converting date string to date获取的,所以我认为它很好,但看起来它引用了一个不存在的对象。

我一直在关注http://php.net/manual/en/function.date-parse-from-format.phphttp://www.w3schools.com/php/php_ref_date.asp,但我没有发现任何线索。

我的问题是这段代码应该作为一个独立的代码段工作。如果是这样,为什么它对我不起作用?另外,我应该如何按预期工作。

2 个答案:

答案 0 :(得分:3)

date_parse_from_format();

返回关联数组,并且您尝试访问非对象上的类方法。

如果你想使用PHP的内置DateTime类。然后在这里提供更多信息http://in2.php.net/manual/en/datetime.format.php

答案 1 :(得分:2)

date_parse_from_format返回一个数组,而不是DateTime对象。你想要的是

$date = date_create_from_format('M jS Y', $date_str);
             ^^^^^^---note the change
echo date('Y-m-d', $date);