Junior — Middle
Czy możesz wyjaśnić, czym jest zamknięcie i jak działa w PHP?
sobes.tech AI
Odpowiedź od AI
W PHP, zamknięcie to anonimowa funkcja, która może przechwytywać zmienne ze swojego zewnętrznego zakresu i używać ich wewnątrz siebie, nawet po zakończeniu działania funkcji zewnętrznej. Pozwala to na tworzenie funkcji z zachowaną stanem.
Przykład:
function counter() {
$count = 0;
return function() use (&$count) {
$count++;
return $count;
};
}
$countFunc = counter();
echo $countFunc(); // 1
echo $countFunc(); // 2
Tutaj anonimowa funkcja przechwytuje zmienną $count przez referencję i zachowuje jej wartość między wywołaniami.