2017-06-07 1 views
0

kann ich Zugriff auf nicht-statische Mitglieder auf diese Weise:PHP - Zugriff auf eine statische Eigenschaft mit String

$phpObject->{$propertyName}; 

Aber wenn ich es auf einer statischen Variablen versuchen, funktioniert es nicht:

MyStaticClass::{$propertyName}; //page won't even compile with this 

Wie kann ich auf eine statische Variable mit einem String zugreifen?

Antwort

2

dynamisch eine Eigenschaft zugreifen Sie die folgende Syntax (Test mit PHP7) verwenden können:

MyStaticClass::$$propertyName 

oder

MyStaticClass::${$propertyName} 
0

sollten Sie $ für den Klassennamen verwenden, um auf eine statische Eigenschaft zuzugreifen. Siehe das folgende Beispiel

class Foo { 
    public static $bar = 'str'; 
} 
echo Foo::$bar; 
+0

Obwohl dieser Code kann dazu beitragen, die lösen Problem, es erklärt nicht _why_ und/oder _how_ es beantwortet die Frage. Die Bereitstellung dieses zusätzlichen Kontexts würde seinen langfristigen Wert erheblich verbessern. Bitte [bearbeiten] Sie Ihre Antwort, um eine Erläuterung hinzuzufügen, einschließlich der Einschränkungen und Annahmen. –

Verwandte Themen