我在计算PHP日期对象和当前时间之间的日期差异时遇到问题。我知道我必须得到当前的时间:
//in a symfony controller
new \DateTime("now")
我有一个成员文档(MySql中的实体),其中包含如下字段:
class Member {
//some fields
/**
* @ODM\Date
*/
protected $regDate;
//and so on
}
现在我想计算用户活动:
// $member declared and assigned
$activity = new \DateTime("now") - $member->getRegDate();
但是发生了这个错误:
Object of class DateTime could not be converted to int
我做错了什么?感谢您的帮助
答案 0 :(得分:7)
您可以使用date_diff
来计算差异:
$diff = date_diff(new DateTime(), $member->getRegDate());
var_dump( $diff ); // « shows some properties.
有关详情,请参阅date_diff和DateInterval上的文档。
顺便说一句,您也不需要使用"now"
,因为这是默认行为。