Po przeskoczeniu z php4 na "piatke" i dokladnemu przestudiowaniu mowych mozliwosci ( nie bylo tego za wiele


<?php class test { public $n = \"tekst\"; function __get( $var ) { { $r = $this->$var; return $r; } else { } } } $foo = new test(); $foo->n; ?>
Przypuszczalem ze wynikiem takiego kodu bedzie po prostu:
Kod
pobieranie $this->n
zwracanie: tekst
zwracanie: tekst
ale tak nie jest :/ - funkcja __get jest wywolywana tylko wtedy gdy nastapi proba pobrania niezdefiniowanej zmiennej np $this->zmienna czego wynikiem bedzie
Kod
pobieranie $this->zmienna
blad!
blad!
wiec moje pytanie brzmi dlaczego? czy cos w kodzie jest zle napisane?