array_slice

(PHP 4, PHP 5, PHP 7)

array_sliceExtrahiert einen Ausschnitt eines Arrays

Beschreibung

array_slice ( array $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.

Parameter-Liste

array

Das 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. Es ist zu beachten, dass der offset die Position im Array angibt, nicht den Schlüssel.

length

Ist length angegeben und positiv, enthält die Sequenz bis zu so viele Elemente. Wenn das Array kürzer als der length ist, 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_keys

Beachten Sie, dass array_slice() standardmäßig ganzzahlige Schlüssel des Arrays zurücksetzt und neu vergibt. Sie können dieses Verhalten ändern, indem Sie preserve_keys auf TRUE setzen. Zeichenkettenschlüssel werden immer erhalten, unabhängig von diesem Parameter.

Rückgabewerte

Gibt den Ausschnitt zurück. Wenn der gewählte offset größer als die Anzahl an Array Elementen ist, wird ein leeres Array zurückgegeben.

Changelog

Version Beschreibung
5.2.4 Der Standardwert des length Parameters wurde zu NULL geändert. Eine NULL length weist nun die Funktion an, die Länge des array zu verwenden. Vor dieser Version wurde eine NULL length als 0 interpretiert (nichts wird zurückgegeben).
5.0.2 Der optionale preserve_keys-Parameter wurde hinzugefügt.

Beispiele

Beispiel #1 array_slice()-Beispiele

<?php
$input 
= array("a""b""c""d""e");

$output array_slice($input2);      // liefert "c", "d" und "e"
$output array_slice($input, -21);  // liefert "d"
$output array_slice($input03);   // liefert "a", "b" und "c"

// beachten Sie die Unterschiede in den Schlüsseln
print_r(array_slice($input2, -1));
print_r(array_slice($input2, -1true));
?>

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(=> "a""b""c""d""e");
print_r(array_slice($input12));
?>

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($ar03));
print_r(array_slice($ar03true));
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

Array
(
    [a] => Apfel
    [b] => Banane
    [0] => Pfirsisch
)
Array
(
    [a] => Apfel
    [b] => Banane
    [42] => Pfirsisch
)

Siehe auch

  • array_splice() - Entfernt einen Teil eines Arrays und ersetzt ihn durch etwas anderes
  • unset() - Löschen einer angegebenen Variablen
  • array_chunk() - Splittet ein Array in Teile auf