Funkcja PHP array_map()

Funkcja PHP array_map()

Funkcja PHP array_map() wywołuje funkcję zwrotną dla każdego elementu tablicy lub tablic, które zostaną jej przekazane jako argumenty.

Składnia funkcji PHP array_map()

Funkcja PHP array_map() ma następującą składnię:

array_map(?callable $callback, array $array, array ...$arrays): array

Parametry

Parametr Opis
callback Parametr obowiązkowy. Funkcja, która ma zostać wywołana dla każdego elementu w każdej przekazanej tablicy.

Liczba jej parametrów powinna być równa liczbie tablic przekazanych do funkcji array_map(). Jeśli tablic będzie więcej, to nadmiarowe tablice zostaną zignorowane.

Jeśli natomiast funkcji zwrotnej zostanie przekazana zbyt mała liczba argumentów (tablic), PHP zgłosi błąd ArgumentCountError.

W miejscu argumentu callback można też przekazać wartość null, aby utworzyć tablicę tablic zawierających elementy z tablic wejściowych o takich samych indeksach.

array Pierwsza tablica, której elementy mają zostać przekazane do funkcji zwrotnej.
arrays Kolejne tablice, które mają zostać przekazane do funkcji zwrotnej.

Wartość zwrotna

Funkcja PHP array_map() zwraca tablicę wyników zastosowania funkcji zwrotnej do elementów tablicy lub tablic przekazanych jako argumenty do tej funkcji zwrotnej.

Jeśli jako argument zostanie przekazana tylko jedna tablica, to jej klucze zostaną zachowane. W innych przypadkach tablica zwrotna będzie indeksowana numerycznie od zera.

Typ zwrotny: array.

Dodatkowe przykłady

Przekazanie kilku tablic

W poniższym przykładzie do funkcji array_map() zostały przekazane trzy tablice, które zostały wykorzystane przez funkcję zwrotną wskazaną przez pierwszy argument.


$fruit = ["banany", "pomarańcze", "truskawki"];
$sweets = ["cukierki", "batony", "ciastka"];
$meat = ["boczek", "salceson", "pasztet"];

function f($x, $y, $z) {
  return ("Lubię $x, $y i $z.");
}

print_r(array_map("f", $fruit, $sweets, $meat));

Wynik:

Array
(
    [0] => Lubię banany, cukierki i boczek.
    [1] => Lubię pomarańcze, batony i salceson.
    [2] => Lubię truskawki, ciastka i pasztet.
)

Wartość null jako callback

W poniższym przykładzie zamiast funkcji zwrotnej w pierwszym argumencie funkcji array_map() została przekazana wartość null. W efekcie funkcja ta utworzyła tablicę tablic zawierających elementy o takich samych indeksach z tablic wejściowych.


$fruit = ["banany", "pomarańcze", "truskawki"];
$sweets = ["cukierki", "batony", "ciastka"];
$meat = ["boczek", "salceson", "pasztet"];

print_r(array_map(null, $fruit, $sweets, $meat));

Wynik:

Array
(
    [0] => Array
        (
            [0] => banany
            [1] => cukierki
            [2] => boczek
        )

    [1] => Array
        (
            [0] => pomarańcze
            [1] => batony
            [2] => salceson
        )

    [2] => Array
        (
            [0] => truskawki
            [1] => ciastka
            [2] => pasztet
        )

)
Udostępnij:
Share

Podobał Ci się ten artykuł?

Oceń go!

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

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