Funkcja PHP array_slice() - pobieranie wycinka tablicy

Funkcja PHP array_slice()

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:
  • Jeśli zostanie pominięty: funkcja pobierze wszystkie elementy od pozycji offset do końca tablicy.
  • Wartość dodatnia: funkcja pobiera taką liczbę elementów, zaczynając od pozycji offset. Jeśli w tablicy nie ma wystarczającej liczby elementów, to zostanie pobranych tyle, ile jest.
  • Wartość ujemna: funkcja pobierze elementy od pozycji offset do pozycji znajdującej się o taką liczbę elementów od końca tablicy.
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 array_slice() reorganizuje indeksowanie liczbowe (klucze łańcuchowe zawsze pozostają niezmienione).

Wartość zwrotna

Funkcja PHP array_slice() zwraca tablicę zawierającą pobrane elementy.

Jeśli wartość parametru 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"
}
Udostępnij:
Share

Podobał Ci się ten artykuł?

Oceń go!

Średnia 5 / 5. Liczba głosów: 3

Jeszcze nikt nie głosował. Wyprzedź innych i zagłosuj.

Skoro spodobał Ci się ten artykuł...

Poleć go znajomym!

Ojej :( Powiedz nam, co powinniśmy poprawić!

blank
Podoba Ci się ta strona?

Pomóż nam się rozwijać, wykupując płatne konto. Dzięki temu będziemy mogli tworzyć dla Ciebie jeszcze więcej ciekawych treści, a Ty pozbędziesz się reklam.

Dodaj komentarz