Mam sobie dwie klasy (to tylko przykład):
class Controller{ function index_action(){ Klasa::metoda(); } } class Klasa{ function metoda(){ } }
I teraz jeśli zrobię tak:
$controller=new Controller(); $controller->index_action();
To wyświetla mi obiekt $controller. Czyli zmienna $this jest dostępna w metodzie metoda. Więc co jest grane? Gdzie ta cała teoria o zasięgu zmiennych? Jak zrobić żeby zmienna $this była dostępna tylko i wyłącznie w obrębie obiektu/klasy i nie wędrowała po metodach innych klas.