Auf statische Variablen der untergeordneten Klasse aus der übergeordneten Klasse zugreifen?

Ich habe eine Basisklasse, die ich Funktionen für eine Klasse aufrufen muss, auf die in der untergeordneten Klasse verwiesen wird.

Leicht genug,

class base_class {

    public function doSomethingWithReference(){
        $this->reference->doSomething();
    }
}

class extended_class extends base_class{

    protected $reference;

    public function __construct($ref){
        $this->reference = $ref;
    }
}

Nun funktioniert das natürlich gut,

Aber beim Debuggen ist mir der Wert von nicht wichtig$this->reference

Aber das Objekt, das$this->reference bezieht sich auf ist riesig!

Also, wenn ich es tueprint_r($instanceOfExtendedClass) Ich bekomme den Ausdruck von diesem Objekt.

Jetzt ist die Referenz für jede erweiterte Klasse unterschiedlichbase_class.

Was ich tun wollte, war nur festgelegtreference als statische Eigenschaft auf demextended_class Klasse.

Aber dann änderndoSomethingWithReference seinself::$reference Löst einen undefinierten Variablenfehler aus.

Und umgekehrt setzen Sie die statische Variable inbase_class und ändern es vonextended_class funktioniert nicht, da die Variable für alles, was sich von dieser Klasse erstreckt, geändert wird.

Gibt es eine Möglichkeit, dies zu tun, damit ich den Ausdruck nicht verliere?$this->reference?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage