Lassen Sie uns sagen, dass ich die folgende Klasse:Können Sie statisch in PHP auf eine nicht statische Klasseneigenschaft zugreifen?
class A {
public $Foo;
public $Foo2;
public static function $Current;
public static function setCurrent($Foo, $Foo2) {
self::$Current=new A($Foo, $Foo2);
}
public function __construct($Foo, $Foo2) {
$this->Foo=$Foo;
$this->Foo2=$Foo2;
}
}
Wenn ich den folgenden Code schreiben:
A::setCurrent(1,2);
ist es eine Art und Weise, später A::$Foo
, zu verwenden und den Inhalt von A::$Current->Foo
bekommen?
Ja, danke, dass Sie darauf hingewiesen haben, das ist nicht mein genauer Anwendungsfall, ich wollte einfach einen einfacheren Code, um das Verständnis zu erleichtern. Der Anwendungsfall wäre der folgende: Es wird immer eine Standardklasse "A" definiert sein, auf die ich schnell zugreifen möchte, ohne das initialisierte Objekt als globale Variable und alles zu speichern, aber es kann mehr "A" -Klassen geben im gesamten Code definiert. Ich weiß, dass, wie es geschrieben steht, es nicht funktionieren wird, ich denke darüber nach, die Magie irgendwie zu nutzen, um mein gewünschtes Ergebnis zu erreichen. –