Alors que la réponse de Tiger et Razib est tout à fait correct, je voulais présenter une réponse qui explique en fait pourquoi vous obtenez l'erreur de toute façon.
Premièrement, changer votre < = en < résout le problème, mais pourquoi?
Prenez ce tableau comme un exemple
Ici, nous définissons un tableau qui contient quelques mots:
$array = ["cake","apple","tree","log"];
Le tableau ci-dessus a 4 « éléments » à l'intérieur de celui-ci: gâteau, pomme, arbre et bûche.
Impression du tableau via un var_dump (ou tout autre) révélera les éléments suivants:
0: cake
1: apple
2: tree
3: log
Le "problème"
comptage aide (tableau de $) retournera 4, ce qui est correct car il y a 4 éléments dans le tableau, cependant parce que les index de PHP commencent à zéro, 4 est réellement faux.
La taille correcte serait count ($ array) -1 (= 3)
Comme votre forloop boucles autour de chaque élément du tableau, il frappe:
$item = $array[4]
Quelle est la position de cinq éléments (comme on commence à zéro), cette position n'existe pas, donc vous obtenez le 'Undefined offset' erreur
le FixLe correctif donné pour changer votre code de < = (Inférieur ou égal à) à < (Plus petit que) résout le problème, car le forloop boucle de zéro à moins de 4 (donc 3, ce qui explique ci-dessus est la taille correcte du tableau dans le terme PHP)
J'espère que cela vous aide à comprendre, et toute autre personne qui trouve ce post sur Google plus tard pourquoi utiliser < (ou à la place de simplement compter ($ array) -1) est le option nécessaire pour les tableaux PHP
4 éléments à partir de '0' l'index max est' 3' mais 'count()' renvoie 4. – AbraCadaver
'$ i
Ma chaîne ajax pourrait être N longue –