我正在从具有单独日期和时间字段的数据库中检索记录,并将它们组合到日期时间对象中,以便我可以获得开始和结束日期/时间之间的差异。我还想计算返回记录数的总小时数。
我目前的代码是这样的
$temp_total = date_create("00:00");
while($row = mysqli_fetch_assoc($result))
{
$startDate = $row['StartDate'];
$startTime = $row['StartTime'];
$start = $startDate . " " . $startTime;
$start = new DateTime($start);
$finishDate = $row['FinishDate'];
$finishTime = $row['FinishTime'];
$finish = $finishDate . " " . $finishTime;
$finish = new DateTime($finish);
$duration = $start->diff($finish);
$temp_total->add($duration);
}
这最终结束了时间周围,即8小时,12小时和12小时给了我总共8小时,我认为这是因为我错过了某处的附加日。
我是以正确的方式解决这个问题还是有更好的方法呢?