Иногда бывает удобно иметь переменными имена переменных. То есть, имя переменной, которое может быть определено и изменено динамически. Обычная переменная определяется примерно таким выражением:
Переменная переменная берет значение переменной и рассматривает его как имя переменной. В вышеприведенном примере hello может быть использовано как имя переменной при помощи двух знаков доллара. То есть:
Теперь в дереве символов PHP определены и содержатся две
переменные: $a
, содержащая "hello", и
$hello
, содержащая "world". Таким образом,
выражение
выведет то же, что и
то есть, они оба выведут: hello world.
Для того чтобы использовать переменные переменные с массивами, вы
должны решить проблему двусмысленности. То есть, если вы напишете
$$a[1]
, обработчику необходимо знать, хотите ли
вы использовать $a[1]
в качестве переменной,
либо вам нужна как переменная $$a
, а затем ее
индекс [1]. Синтаксис для разрешения этой двусмысленности таков:
${$a[1]}
для первого случая и
${$a}[1]
для второго.
Внимание |
Пожалуйста, обратите внимание, что переменные переменные не могут
использоваться с
Суперглобальными массивами
PHP. Это означает, что вы не можете делать что-то вроде
|
Пред. | Начало | След. |
Область видимости переменной | Уровень выше | Переменные вне PHP |