Supprimez un élément d'un tableau et remplacez-le par un nouvel élément :
<?php$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"jaune");$a2=array( "a"=>"violet","b"=>"orange");array_splice($a1,0,2,$a2);print_r($a1);?>La fonction array_splice() supprime un élément sélectionné d'un tableau et le remplace par un nouvel élément. La fonction renverra également un tableau d'éléments supprimés.
Astuce : Si la fonction ne supprime aucun élément (longueur=0), le tableau de remplacement sera inséré à partir de la position du paramètre start (voir exemple 2).
Remarque : Les noms de clé dans les tableaux de substitution ne sont pas conservés.
array_splice( tableau, début, longueur, tableau )
paramètre | décrire |
---|---|
tableau | Requis. Spécifie un tableau. |
commencer | Requis. valeur numérique. Spécifie la position de départ des éléments supprimés. 0 = premier élément. Si la valeur est définie sur un nombre positif, la suppression commence au décalage dans le tableau spécifié par la valeur. Si la valeur est définie sur un nombre négatif, la suppression commence au décalage spécifié par la valeur à partir de la fin du tableau. -2 signifie commencer de l'avant-dernier élément du tableau. |
longueur | Facultatif. valeur numérique. Spécifie le nombre d'éléments à supprimer, qui correspond également à la longueur du tableau renvoyé. Si la valeur est définie sur un nombre positif, ce nombre d'éléments est supprimé. Si cette valeur est définie sur un nombre négatif, tous les éléments du début à la longueur réciproque de la fin du tableau sont supprimés. Si cette valeur n'est pas définie, tous les éléments de la position définie par le paramètre start jusqu'à la fin du tableau sont supprimés. |
tableau | Facultatif. Spécifie le tableau avec les éléments à insérer dans le tableau d'origine. S'il n'y a qu'un seul élément, il peut être défini sur une chaîne et n'a pas besoin d'être défini sur un tableau. |
Valeur de retour : | Renvoie un tableau contenant les éléments extraits. |
---|---|
Version PHP : | 4+ |
Identique à l'exemple précédent sur cette page, mais affiche le tableau renvoyé :
<?php$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"jaune");$a2=array( "a"=>"violet","b"=>"orange");print_r(array_splice($a1,0,2,$a2));?>Avec le paramètre de longueur défini sur 0 :
<?php$a1=array("0"=>"red","1"=>"green");$a2=array("0"=>"purple","1"=>"orange") ;array_splice($a1,1,0,$a2);print_r($a1);?>