array_splice

array_splice -- Efface et remplace une portion de tableau

Description

array array_splice ( array input, int offset [, int length [, array replacement]])

array_splice( ) supprime les éléments désignés par offset et length du tableau input et les remplace par les éléments du tableau replacement , si ce dernier est présent .

Si offset est positif , la série commencera à cet offset dans le tableau input . Si offset est négatif , cette série commencera à l ' offset offset mais en commençant à la fin du tableau input .

Si length est donné et positif , alors la série aura autant d ' éléments . Si length est donné et négatif , les éléments seront pris dans l ' ordre inverse . Si length est omis , la séquence lira tous les éléments du tableau , depuis l' offset offset jusqu la fin du tableau . Conseil : pour supprimer tous les éléments du tableau depuis offset jusqu' à la fin , même si un tableau de remplacement replacement est spécifié , utilisez count ( count($input ) ) à la place de length .

Si replacement est précisé , alors les éléments supprimés sont remplacés par les éléments de ce tableau . Si l' offset et length sont tels que la taille du tableau ne change pas , alors les éléments du tableau de remplacement replacement sont insérés à partir de l 'offset offset .

Conseil : si le tableau de remplacement ne contient qu' un seul élément , il n'est pas obligatoire de forcer le type en tableau avec array( ) , à moins que cette variable ne soit elle-même un tableau .

Les codes suivants sont équivalents :

 
?php

 
array_push(

 
$input

 
,

 
$x

 
,

 
$y

 
)

 
array_splice($input

 
,

 
count($input)

 
,

 
0

 
,

 
array($x

 
,

 
$y)

 
)

 
array_pop($input

 
)

 
array_splice($input

 
,

 
-1

 
)

 
array_shift($input

 
)

 
array_splice($input

 
,

 
0

 
,

 
1

 
)

 
array_unshift($input

 
,

 
$x

 
,

 
$y

 
)

 
array_splice($input

 
,

 
0

 
,

 
0

 
,

 
array($x

 
,

 
$y)

 
)

 
$a[$x

 
]

 
=

 
$y

 
array_splice($input

 
,

 
$x

 
,

 
1

 
,

 
$y

 
)

 
?





array_splice( ) retourne le tableau des éléments supprimés .

Exemple 1 . Exemples avec array_splice( )

 
?php

 
/

 
/

 
cas

 
simple

 
$input

 
=

 
array(

 
"rouge"

 
,

 
"vert"

 
,

 
"bleu"

 
,

 
"jaune")

 
;

 
array_splice($input

 
,

 
2)

 
;

 
/

 
/

 
$input

 
est

 
array("rouge"

 
,

 
"vert"

 
)

 
/

 
/

 
nombre

 
d'éléments

 
négatif

 
$input

 
=

 
array("rouge"

 
,

 
"vert"

 
,

 
"bleu"

 
,

 
"jaune")

 
;

 
array_splice($input

 
,

 
1

 
,

 
-1)

 
;

 
/

 
/

 
$input

 
est

 
array("rouge"

 
,

 
"jaune"

 
)

 
/

 
/

 
avec

 
un

 
élément

 
de

 
remplacement

 
$input

 
=

 
array("rouge"

 
,

 
"vert"

 
,

 
"bleu"

 
,

 
"jaune")

 
;

 
array_splice($input

 
,

 
1

 
,

 
count($input)

 
,

 
"orange")

 
;

 
/

 
/

 
$input

 
est

 
array("rouge"

 
,

 
"orange"

 
)

 
/

 
/

 
cas

 
complexe

 
$input

 
=

 
array("rouge"

 
,

 
"vert"

 
,

 
"bleu"

 
,

 
"jaune")

 
;

 
array_splice($input

 
,

 
-1

 
,

 
1

 
,

 
array("noir"

 
,

 
"marron"))

 
;

 
/

 
/

 
$input

 
est

 
array("rouge"

 
,

 
"vert"

 
,

 
/

 
/

 
"bleu"

 
,

 
"noir"

 
,

 
"marron"

 
)

 
?





Voir aussi array_slice( ) .

Note : array_splice() a été ajoutée en PHP 4.0.