Lors de la tentative d'exécution du code ci-dessous, mon navigateur continue de répondre aux erreurs ci-dessous. Comment puis-je corriger le code ci-dessous, donc ces erreurs ne se présentent plus?Décalage non défini et problème de variable indéfinie
Pour être clair, ces erreurs apparaissent uniquement sur les lignes contenant chacun des ci-dessous:
$high = $arr[$middleval+1];
$median = (($low+$high)/2);
Merci
Code:
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;
}
Erreurs:
Notice: Undefined offset: 0 in medium.php on line 9
Notice: Undefined variable: matches in medium.php on line 10
Il n'y a pas de variable '$ matches' dans le code, je ne vois pas comment vous pourriez obtenir la deuxième erreur. – Barmar
$ bas = $ correspond [0]; – user7644146
Vous obtiendrez cette erreur si '$ arr' est vide. '$ count = 0', qui est pair, alors vous essayez d'accéder' $ arr [0] ', qui n'existe pas. – Barmar