【发布时间】:2013-09-11 05:25:29
【问题描述】:
运行 PHP 5.3.27 的实时服务器
在根 www 目录下,我正在运行旧站点。
在root/mysite 下,我的新站点以零错误或警告运行。
我使用索引和 .httaccess 更改了 subdirectory /mysite 下的暂存 WordPress 站点,以使用 www.example.com 而不是暂存的 www.example.com/mysite 进行查看完美。
在计算日期范围的单独页面下,我收到一个致命错误,说明:
Fatal error: Call to undefined method DateTime::diff()...
当我将站点切换回子目录并使用www.example.com/mysite/ 加载它时,没有致命错误,并且差异会正确计算日期范围。
我再次运行 php 5.3.27。我什至将其切换到 5.4 进行验证并收到 mktime() 错误,该错误已更正为 time(),但在 diff 上仍然出现致命错误
这是导致问题的代码位:
$date1 = new DateTime($mysqlExpireDate);
$date2 = new DateTime();
$interval = $date1->diff($date2); // ERRORS??
$days = $interval->days;
任何想法都将不胜感激,我已经检查了我能想到的一切。
【问题讨论】:
-
程序化的
date_diff()函数怎么样,例如$interval = date_diff($date1, $date2)?你也可以打印出(从同一个脚本)phpversion()? -
确保 $date1 和 $date2 设置正确。 $mysqlExpireDate 是否为 DateTime 提供了正确的格式,并且实例化一个新的 DateTime 是否意味着它的时间戳是现在?
-
@Dwight:它不会解释 fatal 错误,无论对象的属性值如何 - 它应该提供声明的合约
-
@William Hagan:询问托管支持或您的系统管理员?
-
@WilliamHagan "Genius" 可能有点牵强。很高兴能提供帮助
标签: php