zagnieżdżone funkcje w php zgłaszają wyjątek, gdy zewnętrzny jest wywoływany więcej niż raz
aby założyć, że mam następujące
function a(){
function b(){}
}
a(); //pass
a(); //error
dlaczego w drugim wywołaniu wyjątek jest rzucany i mówi
cannot re-declare function b()
myślałem, że każde wywołanie funkcji tworzy nowy aktywny rekord, który zawiera własny zakres; podobnie jak w innych językach innych niż PHP, gdy deklarujemy zmienną w funkcji i nazywamy tę funkcję, wszystkie zmienne są żywe dla ich zakresu, dlaczego funkcja wewnętrzna nie jest taka sama?