我有一个DateTime()对象的数组,我存储了一些持续时间(如“H:i”) 如何求和这个数组中的所有元素来获得总持续时间?在DateTime()对象中求和的时间
而且还应该考虑到,如果总的持续时间比23:59更重要,我必须能够得到天数。
这是可能的吗?
我试图做这样的:
$duration = new DateTime('00:00');
foreach($routes as $route) {
$arrival_time = new DateTime();
$arrival_time->setTimestamp($route->arrival_time);
$departure_time = new DateTime();
$departure_time->setTimestamp($route->departure_time);
$leg_duration = $arrival_time->diff($departure_time);
$duration->add($leg_duration);
}
但$duration
我得到了错误的时间。
附:
使用$duration->add($leg_duration);
我从"24:00"
时间中扣除了,为什么? 例如,如果$leg_duration = new DateTime('02:10');
结果将是"21:50"
。
$duration->sub($leg_duration);
添加时间"24:00"
这是正确的?
是,尝试并张贴在这里的代码中发现如果遇到问题 – Ejaz 2013-05-01 15:24:08
您的意思是DateInterval对象?总结DateTime对象没有任何意义 – 2013-05-01 15:26:31
@Ejay完成了,现在轮到你了。 – Yekver 2013-05-01 15:31:00