Peter Pan: Du hast recht

Beitrag lesen

Hi!

Wenn ich innerhalb einer Klasse $this->params->()
aufrufe (eine Instanz der Klasse wurde also zuvor erstellt --> $this _ist_ ein Objekt) und 'params' nicht existiert - genauer: kein Objekt ist - erhalte ich die Meldung:
Call to a member function get() on a non-object!

Ja, und bei auf E_ALL gesetztem error_reporting gibts vorher sogar noch ein:

Notice: Undefined property: klassenname::$params

Ja!

Fatal error: Using $this when not in object context
Erhält man, beim statischen Aufruf einer Methode  Object::method1(); und fälschlicherweise in dieser statt self $this benutzt wird.
Ja, auch der statische Aufruf einer Methode ist genausowenig Objektkontext

Nein - es ist allein Klassenkontext, denn die Klasse wird nicht instanziiert!

wie die $this-Verwendung im globalen Kontext oder in einer einfachen Funktion.

Mit E_STRICT (das nicht in E_ALL enthalten ist) bekommt man einen Hinweis, wenn man nicht-statische Methiden statisch und umgekehrt aufruft.

Auch richtig - ich hatte Dir eigentlich beipflichten wollen, denn Dein erster Einwand in diesem Thread war korrekt - aber dieser Satz ist in meiner Antwort an Dich nicht zu lesen. Seltsam... aber so steht es geschrieben!

off:PP

--
"You know that place between sleep and awake, the place where you can still remember dreaming?" (Tinkerbell)