dedlfix: Objektvariablen in eingebundener Funktion benutzen

Beitrag lesen

echo $begrüßung;

Wenn ich eine Datei in einer Klasse einbinde, so kann ich im eingebundenen Code die Klassenvariablen benutzen,

In dem Fall wird der Code aus der Datei (eingebunden heißt sicher include & co.) so angesehen, als ob er direkt an dieser Stelle stünde.

wenn allerdings im eingebunden Code eine Funktion deklariert wird darf ich in ihr keine Klassenvariablen benutzen, jedenfalls kommt folgende Fehlermeldung:

Funktionen werden generell global angelegt. Es ist dabei egal, an welcher Stelle du sie deklarierst.

Fatal error: Using $this when not in object context
Gibt es eine Möglichkeit in eingebundenen Funktionen die Klassenvariablen und -methoden zu benutzen?

Nein, da die Funktion entgegen deiner Annahme nicht eingebunden ist. Es gibt in PHP keine Möglichkeit, eine Klasse oder ein Objekt um Methoden zu erweitern (wenn man von PECL-Extensions wie classkit absieht).

echo "$verabschiedung $name";