2012-06-30 86 views
0

我有一个来自数据库的日期值,我想计算今天的日期和该数据库日期之间的差异。php数据差异给致命错误

从数据库里的日期是

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..... 

感谢

回答

4

date()函数不返回DateTime对象,只是返回字符串。

您需要使用DateTime对象。

$now = new DateTime(); 
$val = $now->diff(new DateTime($result['dt_pub_date'])); 
2

date()返回一个字符串的函数;所以你不能打电话diff()(它不是一个对象)。我想你正在尝试使用DateTime::diff()。因此:创建一个DateTime对象,您可以在其中调用diff()