@ 2astalavista, ça ne marche pas: print_r($arr)=>Array ( [0] => a, [1] => b, [-1] => c )
laurent
@ returnthis.lau_ ce cas, vous devriez utiliser for loop - à partir de -1 - pour le faire fonctionner: for ($i = -1; $i < count($a)-1; $i++)comme le lien référencé l'a montré, mais c'est facile à oublier, donc je ne préfère plus cette solution.
Et si vous avez besoin de clés littérales plutôt que numériques?
Evan
4
@Evan, la documentation pour array_unshiftdit ce qui suitAll numerical array keys will be modified to start counting from zero while literal keys won't be touched.
craned
1
Il y a deux problèmes: 1) la réindexation du tableau 2) ne peut pas ajouter un élément avec un index.
Nabi KAZ
2
Si vous avez un tableau associatif ou avez besoin de conserver les clés, consultez les exemples utilisateur ici: php.net/manual/en/function.array-unshift.php, il y a quelques bons exemples pour y parvenir!
Vallier
112
Dans le cas d'un tableau associatif ou d'un tableau numéroté où vous ne souhaitez pas modifier les clés du tableau:
Attention! "L'opérateur + renvoie le tableau de droite ajouté au tableau de gauche; pour les clés qui existent dans les deux tableaux, les éléments du tableau de gauche seront utilisés et les éléments correspondants du tableau de droite seront ignoré. " - Voir: stackoverflow.com/a/2140094/3411766
cottton
La solution est bonne car elle peut ajouter un élément avec un index et ne pas réindexer le tableau; Mais ayez juste une note sur supprimer l'élément dans le tableau de droite, s'il y a le même index dans le tableau de gauche.
$arr[-1] = $item;
Trouvé ici: stackoverflow.com/a/15252657/669677print_r($arr)
=>Array ( [0] => a, [1] => b, [-1] => c )
for ($i = -1; $i < count($a)-1; $i++)
comme le lien référencé l'a montré, mais c'est facile à oublier, donc je ne préfère plus cette solution.Réponses:
Utilisez array_unshift ($ array, $ item);
te donnera
la source
array_unshift
dit ce qui suitAll numerical array keys will be modified to start counting from zero while literal keys won't be touched.
Dans le cas d'un tableau associatif ou d'un tableau numéroté où vous ne souhaitez pas modifier les clés du tableau:
array_merge
ne fonctionne pas car il réindexe toujours le tableau.la source
Utiliser la fonction
array_unshift
la source
Insérer un élément au début d'un tableau associatif avec une chaîne / clé d'index personnalisée
RÉSULTAT
la source
CA aidera
http://www.w3schools.com/php/func_array_unshift.asp
la source
Utilisez array_unshift () pour insérer le premier élément dans un tableau.
L'utilisateur array_shift () supprime le premier élément d'un tableau.
la source
Ou vous pouvez utiliser un tableau temporaire puis supprimer le vrai si vous voulez le changer pendant le cycle:
la sortie sera:
et lorsque vous le faites pendant le cycle, vous devez nettoyer
$temp_array
après avoir ajouté l'élément au tableau.la source
Avec index personnalisé:
la source
Pour un tableau associatif, vous pouvez simplement utiliser la fusion.
la source