Funkcje wyższego rzędu
Założenie: Zrozumieć, czym są funkcje wyższego rzędu w PHP i zobaczyć proste przykłady ich użycia.
Krok po kroku:
- Definicja funkcji anonimowej (lambda): Funkcje wyższego rzędu często korzystają z funkcji anonimowych. Oto przykład:
- Użycie funkcji anonimowej jako argumentu: Teraz możemy przekazać tę funkcję jako argument do innej funkcji:
- Przykład z funkcją `array_map` :
array_map
jest przykładem wbudowanej funkcji wyższego rzędu. Zastosujmy ją do pomnożenia każdego elementu tablicy przez 2:
$dodaj = function($a, $b) { return $a + $b; };
Tworzymy funkcję anonimową, która przyjmuje dwa argumenty i zwraca ich sumę. Przypisujemy ją do zmiennej $dodaj
.
function zastosujFunkcje($funkcja, $x, $y) {
return $funkcja($x, $y);
}
$wynik = zastosujFunkcje($dodaj, 5, 3);
echo $wynik; // Wyświetli 8
Funkcja zastosujFunkcje
przyjmuje funkcję jako pierwszy argument i ją wykonuje, przekazując jej $x
i $y
.
$tablica = [1, 2, 3, 4, 5];
$tablicaPomnozona = array_map(function($x) { return $x * 2; }, $tablica);
print_r($tablicaPomnozona); // Wyświetli Array ( [0] => 2 [1] => 4 [2] => 6 [3] => 8 [4] => 10 )
array_map
przechodzi przez każdy element tablicy i stosuje przekazaną funkcję anonimową.
Ten przykład pokazuje podstawowe zastosowanie funkcji wyższego rzędu w PHP. Zachęcamy do dalszego zgłębiania tego tematu, aby odkryć jego pełny potencjał i zaawansowane techniki.