Forum und email

array_splice

(PHP 4, PHP 5)

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. Beachten Sie, dass numerische Schlüssel in input nicht erhalten werden.

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. Beachten Sie, dass Schlüssel in der Ersetzung nicht erhalten werden. Wenn replacement nur aus einem Element besteht ist es nicht notwendig, array() anzugeben, es sei denn, dieses Element ist selbst ein Array.

Die folgenden Anweisungen ändern alle den Wert von $input auf die gleiche Art:

array_splice() equivalents
array_push($input, $x, $y) array_splice($input, count($input), 0, array($x, $y))
array_pop($input) array_splice($input, 0, -1)
array_shift($input) array_splice($input, -1)
array_unshift($input, $x, $y) array_splice($input, 0, 0, array($x, $y))
$input[$x] = $y // für Arrays, in denen Schlüssel dem Offset entsprechen array_splice($input, $x, 1, $y)

Gibt das Array mit den entfernten Elementen zurück.

Example#1 array_splice()

<?php
$input 
= array("rot""grün""blau""gelb");
array_splice($input2);
// $input ist nun array("rot", "grün")

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

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

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

Siehe auch array_slice(), unset(), und array_merge().