PHP array_splice() funktion
Eksempel
Fjern elementer fra arrayet og erstat dem med nye elementer:
<?php $a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $a2=array("a"=>"purple","b"=>"orange"); array_splice($a1,0,2,$a2); print_r($a1); ?>
Definition og brug
array_splice() funktionen fjerner valgte elementer fra arrayet og erstatter dem med nye elementer. Funktionen returnerer også et array, der indeholder de fjernede elementer.
Tip:Hvis funktionen ikke fjerner nogen elementer (length=0), vil der blive fra start Indsæt parameterplaceringen i det erstatte array (se eksempel 2).
Bemærk:Bevarer ikke nøglenavne i det erstatte array.
Beskrivelse
array_splice() funktionen ligner array_slice() Funktionen ligner, vælger en række elementer i arrayet, men returnerer ikke, men fjerner dem og erstatter dem med andre værdier.
Hvis den fjerde parameter gives, erstattes de tidligere valgte elementer med arrayet specificeret af den fjerde parameter.
Det sidst genererede array vil blive returneret.
Syntaks
array_splice(array,start,length,array)
Parameter | Beskrivelse |
---|---|
array | Obligatorisk. Angiver arrayet. |
start |
Obligatorisk. Numerisk værdi. Angiver startpositionen for fjernelse af elementer.
|
length |
Valgfri. Numerisk værdi. Angiver antallet af elementer, der fjernes, og også længden af den returnerede array.
|
array |
Valgfri. Angiver en array, der indeholder elementerne, der skal indsættes i det oprindelige array. Hvis der kun er én element, kan det sættes til en streng, uden at det skal sættes til en array. |
Tekniske detaljer
Returværdi: | Returnerer en array bestående af de fjernede elementer. |
PHP Version: | 4+ |
Flere eksempler
Eksempel 1
Som i eksemplet ovenfor på denne side, men returnerer den array, der returneres:
<?php $a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $a2=array("a"=>"purple","b"=>"orange"); print_r(array_splice($a1,0,2,$a2)); ?>
Eksempel 2
Sæt length parameter til 0:
<?php $a1=array("0"=>"red","1"=>"green"); $a2=array("0"=>"purple","1"=>"orange"); array_splice($a1,1,0,$a2); print_r($a1); ?>