In PHP muss ein gewöhnlicher Array-Index eine fest definierte Zeichenfolge oder Zahl sein und darf keine Variable sein.
Zum Beispiel ist der folgende Code falsch:
$index = 'name'; $array = []; $array[$index] = 'John';
Im obigen Beispiel wird der Fehler „Undefinierter Index“ angezeigt, weil das Array mit dem Namen $ nicht im Array <code>$array
vorhanden ist > Der Index von index. $array
中不存在名为 $index
的下标。
解决这个问题的方法是,通过 {}
将变量作为下标的值来使用。例如:
$index = 'name'; $array = []; $array[$index] = 'John'; $array2 = []; $array2["{$index}"] = 'John';
上面的代码将会正常工作,它们都会将 'John'
作为 $array
和 $array2
数组中 "name"
这个下标的值。
除了上述方法之外,使用变量作为下标还有一种方法,那就是使用 variable variable
,通过将变量名作为另一个变量的值,并在变量名前添加 $
符号来引用变量。例如:
$index = 'name'; $$index = 'John'; echo $name;
在上面的代码中,实现了动态的变量定义和使用。$$index
可以看做是 $name
的简写形式,它将会被赋值为 'John'
,而 echo $name
将会输出 'John'
。
虽然 variable variable
可以使程序更加动态,但是它也会让代码变得难以理解和维护,所以应该谨慎使用。
总之,PHP中的数组下标不能使用变量,并可以通过 {}
或 variable variable
{}
als Wert des Index zu verwenden. Zum Beispiel: 🎜rrreee🎜Der obige Code funktioniert einwandfrei, beide haben 'John'
als $array
und $array2
im Array >"name" Der Wert dieses Index. 🎜🎜Zusätzlich zu der oben genannten Methode gibt es eine weitere Möglichkeit, Variablen als Indizes zu verwenden, nämlich Variablenvariable
zu verwenden, indem der Variablenname als Wert einer anderen Variablen verwendet und vorher hinzugefügt wird das Variablennamensymbol $
, um auf Variablen zu verweisen. Zum Beispiel: 🎜rrreee🎜Im obigen Code sind die Definition und Verwendung dynamischer Variablen implementiert. $$index
kann als Abkürzung von $name
angesehen werden, dem der Wert 'John'
und echo $ zugewiesen wird name
gibt 'John'
aus. 🎜🎜Obwohl variable variable
das Programm dynamischer machen kann, kann es auch dazu führen, dass der Code schwer zu verstehen und zu warten ist. Daher sollte er mit Vorsicht verwendet werden. 🎜🎜Kurz gesagt, Array-Indizes in PHP können keine Variablen verwenden, und Variablen können über {}
oder variable variable
als Indexwerte verwendet werden. 🎜Das obige ist der detaillierte Inhalt vonKönnen Variablen nicht für PHP-Array-Indizes verwendet werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!