Php 循环与条件子句
我很难理解这段代码Php 循环与条件子句,php,Php,我很难理解这段代码 protected function compressLowest($lowest){ $result = array(); $result['morning'] = array(); $result['afternoon'] = array(); $result['evening'] = array(); $result['allDay'] = array(); $type = $this->prices->getCondTy
protected function compressLowest($lowest){
$result = array();
$result['morning'] = array();
$result['afternoon'] = array();
$result['evening'] = array();
$result['allDay'] = array();
$type = $this->prices->getCondType();
$lastDate = 0;
$i = array();
$i['morning'] = $i['afternoon'] = $i['evening'] = $i['allDay'] = 0;
foreach($lowest as $date => $prices){
foreach($prices as $range => $price) {
if($this->isNextDay($date, $result[$range][$i[$range]]['to']) && $result[$range][$i[$range]]['price'] == $price){
$result[$range][$i[$range]]['to'] = $date;
} else {
$i[$range] = count($result[$range]);
$result[$range][] = array();
$result[$range][$i[$range]]['from'] = $date;
$result[$range][$i[$range]]['to'] = $date;
$result[$range][$i[$range]]['price'] = $price;
$result[$range][$i[$range]]['destime']=$this->arr['destime'];
$result[$range][$i[$range]]['deptime']=$this->arr['deptime'];
$result[$range][$i[$range]]['flight']=$this->arr['flight'];
}
}
$lastDate = $date;
}
//print_r($result);exit();
return $result;
}
而IsNextDay的检查如下
protected function isNextDay($next, $day){
if($next - $day == 86400){ //60*60*24 = 86400
return true;
} else {
return false;
}
}
我想不出是什么
isNextDay$date、$result[$range][$i[$range]['to']&&$result[$range][$i[$range]]['price']==$price应该是指$day吗?
在上述函数中第二个for循环的if条件子句中。如果你能帮我理解,谢谢你
更新
*很抱歉,我没有仔细阅读,直到我发现在结果[]['to']]之后出现了错误。。。谢谢你的关心。*
对于上面的源代码,我总是注意到未定义的偏移量0。如何将此错误修复为?对于if行中未定义的偏移量0,某些索引的计算结果为0,并且您正在使用该索引的数组在该索引处没有元素
例如,如果$range为0且$result[0]不存在,我不会列出所有可能性。在哪一行获得未定义的偏移量?