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
$licznikprzechowuje początkową wartość licznika. - Definicja funkcji anonimowej z użyciem `use()`: Funkcja anonimowa zwiększa wartość zmiennej
$liczniko 1 za każdym wywołaniem.use ($licznik)pozwala funkcji anonimowej uzyskać dostęp do zmiennej$licznikz 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!