Manchmal erleichtern Variablen Variablennamen die Programmierung erheblich. Das heißt, Variablennamen können dynamisch benannt und verwendet werden. Normalerweise werden Variablen durch die folgenden Anweisungen benannt:
<?php $a = 'hello'; ?>
Variable Variable Name bezieht sich auf die Verwendung des Werts einer Variablen als Namen der Variablen. Im obigen Beispiel können Sie den Namen einer Variablen mit „Hallo“ markieren, indem Sie zwei $-Zeichen verwenden, wie unten dargestellt.
<?php $$a = 'world'; ?>
Durch die beiden obigen Anweisungen werden zwei Variablen definiert: die Variable $a, die „hello“ enthält, und die Variable $hello, die „world“ enthält. Daher ist die Ausgabe der folgenden Sprache:
<?php echo "$a ${$a}"; ?>
genau die gleiche wie die Ausgabe der folgenden Anweisung:
<?php echo "$a $hello"; ?>
Beide geben Folgendes aus: Hallo Welt.
Um veränderbare Variablennamen für Arrays verwenden zu können, müssen Sie ein Mehrdeutigkeitsproblem lösen. Das heißt, wenn Sie $$a[1] schreiben, muss der Parser verstehen, ob $a[1] als Variable behandelt werden soll oder ob sich $$a als Variable [1] auf diese Variable bezieht. Index. Die Syntax zum Auflösen dieser Mehrdeutigkeit lautet: Verwenden Sie ${$a[1]} im ersten Fall und ${$a}[1] im zweiten Fall. Auf
KlassenAttribute kann auch über veränderbare Eigenschaftsnamen zugegriffen werden. Veränderbare Eigenschaftsnamen werden aus dem Zugriffsbereich der Variablen übernommen, in der der Aufruf erfolgte. Wenn Ihr -Ausdruck beispielsweise so lautet: $foo->$bar, dann sucht die Laufzeit nach der Variablen $bar im lokalen -Variablenbereich und ihr Wert wird angezeigt be Wird als Eigenschaftsname des $foo-Objekts verwendet. Es kann auch verwendet werden, wenn $bar ein Array ist.
Beispiel 1 Variabler Variablenname
<?php class foo { var $bar = 'I am bar.'; } $foo = new foo(); $bar = 'bar'; $baz = array('foo', 'bar', 'baz', 'quux'); echo $foo->$bar . "n"; echo $foo->$baz[1] . "n"; ?>
Das obige Beispiel gibt die folgenden Ergebnisse aus:
I am bar. I am bar.
Warnung
Bitte beachten Sie, Variable Variable Namen können nicht für PHP-Funktionen und superglobale Array-Variablen in Klassen verwendet werden. Auch die Variable $this ist eine spezielle Variable, die nicht dynamisch benannt werden kann.
Das obige ist der detaillierte Inhalt vonAusführliche Erklärung zur Verwendung variabler Variablennamen in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!