fanelf.de: /OOP Pseudovariable $this

Beitrag lesen

Hi!

Mit der Pseudovariable $this kann ein Objekt bekanntlich auf seine eigenen Instanzvariablen und Methoden zugreifen. Jetzt habe ich mir mal eine ziemlich einfache Klasse geschrieben, die die Dateien eines Verzeichnis in ein Array schreibt [1]:

this oder self sind keine pseudovariablen, sondern bezeichnen die eigene instanz einer klasse. man macht dies zur abgrenzung zu anderen instanzen.
in der modernen oop hat sich aber eingebürgert, dass die sicht auf die eigene instanz weggelassen werden kann. du hast ja die variable in der klasse deklariert. anders sähe es aus, wenn du eine referenz auf ein anderes objekt hättest. dieses müßtest du selbstverständlich prefixen.

Mein Frage ist nun, warum die Funktion auch das tut, was sie soll, wenn man z.B. schreibt:
Hier lasse ich das $this weg und das Objekt sollte doch eigentlich nicht mehr auf die Variablen zugreifen können. Man erhält im Übrigen auch keinen Fehler/Warnung/Notice angezeigt[2].

Wie ist das möglich?

ich habe es nicht ausprobiert, aber mit php5 will man sich mit oop ja weiterentwickeln. ich denke, daß auch dies dazu gehört.