我面临一个小问题,我需要你的帮助:)。
我解释说: 我有两个这样的数组:
DateMin : 16/03/2016 19:12:08 DateMax : 16/03/2016 19:18:29
DateMin : 16/03/2016 19:12:08 DateMax : 16/03/2016 19:18:30
DateMin : 16/03/2016 19:12:09 DateMax : 16/03/2016 19:18:30
DateMin : 16/03/2016 19:12:09 DateMax : 16/03/2016 19:18:31
DateMin : 07/04/2016 12:14:21 DateMax : 07/04/2016 12:31:03
我想做的是计算两个日期之间的间隔,只有当这个间隔超过4秒时才会计算。
以下是我要做的事情:
foreach($res as $r){
if(isset($output[$r['DATE']])) {
$dateBefore = null;
$dateSql = DateTime::createFromFormat("d/m/Y G:i:s",$r['DATE']);
if($dateBefore == null){
$dateBefore = DateTime::createFromFormat("d/m/Y G:i:s",$r['DATE']);
}
$interval = $dateSql->diff($dateBefore);
if($interval->format('%s') > 4){
$dateBefore = DateTime::createFromFormat("d/m/Y G:i:s",$r['DATE']);
$output[$r['DATE']] += intval($interval->format('%s'));
}
}
else
$output[$r['DATE']] = 0;
}
答案 0 :(得分:2)
我想,你需要改变
if($interval->format('%s') > 4)
as
if($interval->format('%R%a') > 4)
和
$output[$r['DATE']] += intval($interval->format('%s'));
作为
$output[$r['DATE']] += intval($interval->format('%R%a'));