如何将两个DateTime对象之间的差异添加到另一个DateTime object?我尝试了一些与下面类似的代码,但没有成功。
$first_time=new DateTime('01/01/2000 00:00:00');
$second_time=new DateTime('01/01/2000 00:00:50');
$diff=$first_time->diff($second_time);
$time=new DateTime('01/01/2012 12:00:00');
$time->modify('+'.$diff->format('%s').' seconds');
echo $time;
//Should echo: "01/01/2012 12:00:50"
有人能帮我吗?
format()
不计算Interval的绝对秒数,它只为您提供intern属性的值。既然要添加,为什么不简单地使用add()
呢?diff()
返回一个DateInterval对象,这正是add()
所需要的。
$first_time=new DateTime('01/01/2000 00:00:00');
$second_time=new DateTime('01/01/2000 00:00:50');
$diff=$first_time->diff($second_time);
$time=new DateTime('01/01/2012 12:00:00');
$time->add($diff);
echo $time;