uznay-chto-hochesh.narod.ru

-сайт для интересующихся людей

Учебник - справочник по PHP.

Здесь Вы найдете что хотели

Меню сайта
Главная
Введение
Справочник языка
Возможности РНР
Функции (справочник)
Расширение РНР 4.0
F.A.Q. частые вопросы
Приложения
Алфавитный указатель
Друзья сайта
сделай сайт сам! пособие по html
изучение html и web-дизайна для новичков
Бесплатная отправка смс на все операторы
Реклама
 
НазадГлава 7. Переменные Вперёд

Переменные переменные

Иногда удобно иметь переменные как имена переменных. То есть имена переменных, которые могут устанавливаться и использоваться динамически. Нормальная переменная устанавливается примерно таким оператором:

$a = "hello";

Переменная переменная/variable variable принимает значение переменной и рассматривает его как имя переменной. В предыдущем примере, hello может использоваться как имя переменной с помощью двух знаков dollar. То есть:

$$a = "world";

После этого в дереве символов РНР определены две переменные: $a с содержимым "hello" и $hello с содержимым "world". Следовательно, оператор

echo "$a ${$a}";

даст тот же вывод, что и

echo "$a $hello";

то есть оба они дадут на выходе: hello world

Чтобы использовать переменные переменные с массивами, вы должны разрешить проблему неоднозначности. То есть, если вы записываете $$a[1], то разборщику необходимо знать, будете ли вы использовать $a[1] как переменную, или вы хотите использовать $$a как переменную, а затем как индекс [1] из этой переменной. Синтаксис для разрешения этой неоднозначности таков: ${$a[1]} для первого случая и ${$a}[1] - для второго.

Пожалуйста отметьте, что переменные переменные не могут использоваться с новыми суперглобалами РНР. Это значит, что вы не можете делать что-либо вроде ${$_GET}. Если вы ищете способ работать с superglobals и старыми HTTP_*_VARS, вы можете попытаться ссылаться на них.

Назад Оглавление Вперёд
Область видимости переменной Вверх Переменные вне PHP

Хостинг от uCoz