(PHP 4, PHP 5, PHP 7)
array_slice — Extrahiert einen Ausschnitt eines Arrays
$array
, int $offset
[, int $length = NULL
[, bool $preserve_keys = FALSE
]] ) : array
array_slice() liefert die mittels
offset und length
spezifizierte Sequenz von Elementen des Arrays
array.
arrayDas Eingabe-Array.
offset
Ist offset nicht negativ, beginnt die
Sequenz bei diesem Offset in dem array.
Ist offset negativ, beginnt die Sequenz
so viele Elemente vor dem Ende von array.
Hinweis:
Der
offsetParameter gibt die Position im Array an, nicht den Schlüssel.
length
Ist length angegeben und positiv, enthält
die Sequenz bis zu so viele Elemente.
Ist das Array kürzer als length, dann werden nur
die verfügbaren Array-Elemente vorhanden sein.
Ist length angegeben und negativ, endet die
Sequenz so viele Elemente vor dem Ende des Arrays.
Wenn nicht angegeben, enthält die Sequenz alle Elemente von
offset bis zum Ende von
array.
preserve_keysHinweis:
array_slice() setzt standardmäßig ganzzahlige Schlüssel des Arrays zurück und vergibt sie neu. Dieses Verhalten kann geändert werden, indem
preserve_keysaufTRUEgesetzt wird. Zeichenkettenschlüssel werden immer erhalten, unabhängig von diesem Parameter.
Gibt den Ausschnitt zurück. Ist der gewählte offset größer als die Anzahl an Array-Elementen, wird ein leeres Array zurückgegeben.
Beispiel #1 array_slice()-Beispiele
<?php
$input = array("a", "b", "c", "d", "e");
$output = array_slice($input, 2); // liefert "c", "d" und "e"
$output = array_slice($input, -2, 1); // liefert "d"
$output = array_slice($input, 0, 3); // liefert "a", "b" und "c"
// beachten Sie die Unterschiede in den Schlüsseln
print_r(array_slice($input, 2, -1));
print_r(array_slice($input, 2, -1, true));
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Array
(
[0] => c
[1] => d
)
Array
(
[2] => c
[3] => d
)
Beispiel #2 array_slice() und ein mit 1 beginnendes Array
<?php
$input = array(1 => "a", "b", "c", "d", "e");
print_r(array_slice($input, 1, 2));
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Array
(
[0] => b
[1] => c
)
Beispiel #3 array_slice() und Array mit gemischten Schlüsseln
<?php
$ar = array('a'=>'Apfel', 'b'=>'Banane', '42'=>'Pfirsisch', 'd'=>'Orange');
print_r(array_slice($ar, 0, 3));
print_r(array_slice($ar, 0, 3, true));
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Array
(
[a] => Apfel
[b] => Banane
[0] => Pfirsisch
)
Array
(
[a] => Apfel
[b] => Banane
[42] => Pfirsisch
)