我有一个来自数据库的日期值,我想计算今天日期和该数据库日期之间的差异。
来自数据库的日期是
2012-06-11 18:20:40
我使用此代码查看值
echo date('Y-m-d H:i:s');
echo $result['dt_pub_date'];
我写了这段代码
$val=date('Y-m-d H:i:s') ->diff($result['dt_pub_date']);
但是收到此错误
Fatal error: Call to a member function diff() on a non-object in.....
由于
答案 0 :(得分:4)
date()
函数不返回DateTime对象,只返回字符串。
您需要使用DateTime对象。
$now = new DateTime();
$val = $now->diff(new DateTime($result['dt_pub_date']));
答案 1 :(得分:2)
函数date()
返回一个字符串;所以你不能在它上面调用diff()
(它不是一个对象)。我想您正在尝试使用DateTime::diff()
。因此:创建一个DateTime
对象,您可以在其上调用diff()
。