array_splice

(PHP 4 )

array_splice --  Entfernt einen Teil eines Arrays und ersetzt ihn durch etwas anderes

Beschreibung

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

array_splice() entfernt die durch offset und length angegebenen Elemente des Arrays input, und ersetzt diese durch die Elemente des Arrays replacement, wenn angegeben und gibt ein Array mit den entfernten Elemente zurück.

Ist offset positiv, beginnt der zu entfernende Bereich bei diesem Offset vom Anfang des Arrays input. Ist offset negativ, beginnt der zu entfernende Bereich offset Elemente vor dem Ende des Arrays input.

Ist length nicht angegeben, wird alles von offset bis zum Ende des Arrays entfernt. Ist length positiv, wird die angegebene Anzahl Elemente entfernt. Ist length negativ, dann wird der Bereich von length Elementen vor dem Ende, bis zum Ende des Arrays entfernt. Tipp: Um alles von offset bis zum Ende des Arrays zu entfernen wenn replacement ebenfalls angegeben ist, verwenden Sie count($input) als length.

Ist das Array replacement angegeben, werden die entfernten Elemente durch die Elemente dieses Arrays ersetzt. Sind offset und length so angegeben dass nichts entfernt wird, werden die Elemente von replacement an der von offset spezifizierten Stelle eingefügt. Tipp: Soll die Ersetzung durch nur ein Element erfolgen ist es nicht nötig ein Array zu anzugeben es sei denn, dieses Element ist selbst ein Array.

Hier einige Entsprechungen:
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)

Gibt das Array mit den entfernten Elementen zurück.

Beispiel 1. array_splice()

$input = array ("rot", "grün", "blau", "gelb");
array_splice ($input, 2);
// $input ist nun array ("rot", "grün")

$input = array ("rot", "grün", "blau", "gelb");
array_splice ($input, 1, -1);
// $input ist nun array ("rot", "gelb")

$input = array ("rot", "grün", "blau", "gelb");
array_splice ($input, 1, count($input), "orange");
// $input ist nun array ("rot", "orange")

$input = array ("rot", "grün", "blau", "gelb");
array_splice ($input, -1, 1, array("schwarz", "braun"));
// $input ist nun array ("rot", "grün", "blau", "schwarz", "braun")

Siehe auch array_slice().