Funkcje anonimowe w kontekście programowania funkcyjnego
Założenie: Zrozumieć, jak funkcje anonimowe (zwane również closure) działają w PHP i jak wpisują się w paradygmat programowania funkcyjnego.
Krok po kroku:
- Definicja funkcji anonimowej: Funkcje anonimowe to funkcje bez nazwy, definiowane w miejscu ich użycia. Oto przykład:
- Użycie funkcji anonimowej jako argumentu funkcji: Funkcje anonimowe mogą być przekazywane jako argumenty do innych funkcji.
- Zamykanie zmiennych (closures): Funkcje anonimowe mogą “zamykać” zmienne z otaczającego zakresu.
$dodaj = function($a, $b) {
return $a + $b;
};
echo $dodaj(5, 3); // Wyświetli 8
Tworzymy funkcję, która dodaje dwie liczby. Zauważ, że nie ma ona nazwy, a jest przypisana do zmiennej $dodaj
.
function operacja($a, $b, $funkcja) {
return $funkcja($a, $b);
}
echo operacja(10, 5, function($x, $y) { return $x - $y; }); // Wyświetli 5
Funkcja operacja
przyjmuje funkcję jako trzeci argument i ją wykonuje.
$x = 10;
$funkcja = function() use ($x) {
return $x * 2;
};
echo $funkcja(); // Wyświetli 20
Słowo kluczowe use
pozwala funkcji anonimowej uzyskać dostęp do zmiennej $x
z zewnątrz.
Ten przykład pokazuje podstawowe zastosowanie funkcji anonimowych w PHP. Programowanie funkcyjne opiera się na traktowaniu funkcji jako obiektów pierwszorzędnych, co umożliwia tworzenie bardziej modularnego i elastycznego kodu. Zachęcamy do dalszego zgłębiania tematu!