在嘗試運行下面的代碼時,我的瀏覽器一直在迴應下面的錯誤。我如何修復下面的代碼,以便這些錯誤不再出現?未定義的偏移量和未定義的變量問題
爲了清楚起見,這些錯誤在包含線只出現在每個的下面:
$high = $arr[$middleval+1];
$median = (($low+$high)/2);
由於
代碼:
function median($arr)
{
sort($arr);
$count = count($arr); //count the number of values in array
$middleval = floor(($count-1)/2); // find the middle value, or the lowest middle value
if ($count % 2) { // odd number, middle is the median
$median = $arr[$middleval];
} else { // even number, calculate avg of 2 medians
$low = $matches[0];
$high = $arr[$middleval+1];
$median = (($low+$high)/2);
}
return $median;
}
錯誤:
Notice: Undefined offset: 0 in medium.php on line 9
Notice: Undefined variable: matches in medium.php on line 10
代碼中沒有變量'$ matches',我沒有看到如何得到第二個錯誤。 – Barmar
$ low = $ matches [0]; – user7644146
如果'$ arr'爲空,則會出現此錯誤。 '$ count = 0',這是偶數,那麼你嘗試訪問不存在的'$ arr [0]'。 – Barmar