PHP DateTime Diff错误我无法弄清楚

时间:2013-09-11 05:25:30

标签: php

运行PHP 5.3.27的实时服务器
在根www目录下,我运行旧网站 在root/mysite下,我运行的新网站没有错误或警告。

我使用索引更改了subdirectory /mysite下的分阶段WordPress网站,使用.httaccess可以查看www.example.com,而不是已暂存www.example.com/mysite我对site_url进行了适当的更改以及网站主页加载完美。

在计算日期范围的单独页面中,我收到致命错误说明:

Fatal error: Call to undefined method DateTime::diff()...   

当我将网站切换回子目录并使用www.example.com/mysite/加载它时没有致命错误,并且diff会正确计算日期范围。

我再次运行php 5.3.27。我甚至将其切换为5.4以验证并收到mktime()错误,该错误已更正为time(),但仍然在diff上出现致命错误

以下是导致问题的代码位:

$date1 = new DateTime($mysqlExpireDate);
$date2 = new DateTime();
$interval = $date1->diff($date2);  // ERRORS??
$days = $interval->days;

任何想法都会受到赞赏,我已经检查了我能想到的一切。

1 个答案:

答案 0 :(得分:0)

您使用的是自动加载器吗? 可能是指任何名为DateTime的实现类。

尝试将new DateTime更改为new \DateTime或将use \DateTime;添加到脚本的开头。

您可以使用ReflectionClass::isUserDefined

进行检查