Funkcja PHP array_slice() pobiera wycinek tablicy, czyli określony zakres jej elementów. Opcjonalnie umożliwia zachowanie kluczy w pobieranym wycinku struktury danych.
Składnia funkcji PHP array_slice()
Funkcja PHP array_slice() ma następującą składnię:
array_slice(
array &$array,
int $offset,
?int $length = null,
bool $preserve_keys = false
): array
Parametry
| Parametr | Opis |
|---|---|
| array | Parametr obowiązkowy. Tablica, z której ma zostać pobrany wycinek. |
| offset | Parametr obowiązkowy. Numer pierwszego elementu wycinka tablicy, który ma zostać pobrany. Jeśli ma wartość ujemną, to odliczanie jest wykonywane od końca tablicy.
Uwaga: Parametr offset określa numer elementu w tablicy, nie jego indeks ani klucz. |
| length | Długość pobieranego odcinka:
|
| preserve_keys | Jeśli domyślna wartość tego parametru zostanie zmieniona na true, to funkcja zachowa indeksy liczbowe elementów w wycinku.
Pozostawienie jego wartości domyślnej powoduje, że funkcja |
Wartość zwrotna
Funkcja PHP array_slice() zwraca tablicę zawierającą pobrane elementy.
offset jest większa niż rozmiar tablicy, to funkcja array_slice() zwraca pustą tablicę.Typ zwrotny: array.
Dodatkowe przykłady
Parametr preserve_keys ustawiony na true
W poniższym przykładzie parametr preserve_keys funkcji array_slice() został ustawiony na true, w wyniku czego indeksy liczbowe nie zostały zmienione:
$a = ["pierwszy element" => "a", 2 => "b", 7 => "c", 12 => "d", "e"];
$b = array_slice($a, 0, 3, true);
var_dump($b);Wynik:
array(3) {
["pierwszy element"]=>
string(1) "a"
[2]=>
string(1) "b"
[7]=>
string(1) "c"
}
Ujemna wartość parametru offset
W poniższym przykładzie parametr offset ma wartość ujemną, więc funkcja odlicza pozycję elementu końcowego wycinka od końca tablicy.
$a = ["a", "b", "c", "d", "e"];
$b = array_slice($a, 1, -2);
var_dump($b);Wynik:
array(2) {
[0]=>
string(1) "b"
[1]=>
string(1) "c"
}
