为什么这个新的日期时间突然不起作用?

时间:2017-02-04 17:22:34

标签: php wordpress datetime

我制作了一个显示facebook事件的wordpress插件(我们的组织将其用作日历事物)。返回一大堆json,然后将其转换为html模板。

长话短说:我已经完成了另一个版本,其中我对一些PHP进行了优化,并将核心分离为“核心”。我现在正在替换所有旧版本(在本地使用XAMP,看看是否有任何中断)。

突然,我使用该插件的页面根本没有显示甚至没有错误消息。我尝试了几件东西来打印任何东西,看看发生了什么,但没有成功。

在隔离问题之后(一点一点地评论所有内容,直到找到导致它的原因)我发现新的日期时间行导致了问题:

$start_time = new datetime($obj['data'][$x]['start_time'],'G:i');

这条生产线已经运作了至少一年了,现在突然间它已经不复存在了。相反,我必须这样做:

$start_time = new datetime($obj['data'][$x]['start_time']); $start_time->format('G:i');

这个以及其他问题突然出现在各处,即使两个本地网站都在php 5.6.15和wordpress 4.7.2上运行

有谁知道这是怎么回事?因为它使我的工作令人难以置信的沮丧。我认为我现在有大约3或4种不同的自定义版本可以使这个插件工作,这当然不是我从HTML模板中拆分PHP所预期的。

1 个答案:

答案 0 :(得分:2)

datetime nox存在。小心大写字母。该班正在调用DateTime

第二个参数是时区,而不是格式。

如果您想从特定格式创建新的DateTime,请使用静态方法:DateTime::createFromFormat