J'ai un tableau à plusieurs dimensions appelé « soldat »:usort retourne Undefined index
Array
(
[0] => Array
(
[name] => Saiga 20k Semi
[target] => 100
[star] => gold
)
[1] => Array
(
[name] => SVU Snaiperskaya Short
[target] => 85
[star] => gold
)
[2] => Array
(
[name] => Type 88 Sniper
[target] => 56
[star] => gold
)
Je suis en train de trier le tableau par la valeur « cible ». J'utilise:
usort($soldier,'compare_target');
function compare_target($x,$y)
{
if($x['target'] == $y['target'])
{
return 0;
}
elseif($x['target'] < $y['target'])
{
return 1;
}
else
{
return -1;
}
}
Mais PHP est de lancer l'erreur suivante: « Undefined index: cible » pour les 2 lignes à l'intérieur de la fonction, des idées?
Essayez de déposer $ x et $ y dans la fonction pour voir où vous en êtes, cela me semble parfait. – RobertPitt
Etes-vous sûr que ce n'est pas un avis PHP? S'il s'agit d'un avis, il peut être évité en vérifiant les variables avec 'isset()' avant de les utiliser. PHP ne renvoie pas d'erreurs sur les index indéfinis, AFAIK. – jwueller
Ça me semble bien ... –