Użycie use() w funkcjach anonimowych
Założenie: Stworzymy licznik, który będzie zwiększał swoją wartość za każdym wywołaniem funkcji anonimowej, wykorzystując do tego mechanizm use()
.
Krok po kroku:
- Deklaracja zmiennej licznika: Zmienna
$licznik
przechowuje początkową wartość licznika. - Definicja funkcji anonimowej z użyciem `use()`: Funkcja anonimowa zwiększa wartość zmiennej
$licznik
o 1 za każdym wywołaniem.use ($licznik)
pozwala funkcji anonimowej uzyskać dostęp do zmiennej$licznik
z zewnętrznego zakresu. - Wywołanie funkcji anonimowej kilka razy: Wywołujemy funkcję anonimową trzykrotnie, obserwując jak zmienia się wartość licznika.
$licznik = 0;
$funkcjaAnonimowa = function() use (&$licznik) {
$licznik++;
echo "Wartość licznika: " . $licznik . "
";
};
$funkcjaAnonimowa();
$funkcjaAnonimowa();
$funkcjaAnonimowa();
Pamiętaj, że użycie znaku &
przed $licznik
w use (&$licznik)
jest kluczowe. Bez niego, funkcja anonimowa otrzymałaby kopię wartości $licznik
, a nie referencję, co uniemożliwiłoby zmianę oryginalnej zmiennej.
Ten przykład pokazuje podstawowe użycie use()
w funkcjach anonimowych w PHP. Zachęcamy do eksperymentowania i dalszego zgłębiania tematu!