Учебник PHP информационные технологии

Двойка? Нет!

Графика
Начертательная геометрия
Практикум по решению задач
Конспект лекций черчение
Геометрическое черчение
Перспектива
ЕСКД - констр. документация
Инженерная графика
Элементарная математика
Кратные интегралы
Математический анализ
Векторный анализ
Аналитическая геометрия
Производная и диф. уравнения
Математика 2 курс
Функции и их графики
Математический анализ
Производные и дифференциалы
ТФКП
Физика
Физические законы механики
Электричество. Магнетизм
Колебания. Волны
Ядерная физика Лекции
Атомная и ядерная физика
Электричество, электростатика
Магнетизм, индукция
Оптика волновая квантовая
Основы физики и ТОЭ
Электромагнитное
взаимодействие
Физика оптика
Молекулярная физика
Информатика
Архитектура ЭВМ
Пролог програмирование
Лекции Пролог
Учебник PHP
Информационные технологии
Web технологии
Интернет
Web безопасность
GPRS
Компьютерные сети
Локальные сети
Основы вычислит. систем
Вычислительные комплексы
Операционные системы
Windows 2000
Windows server 2003
Java учебник
Примеры Java
Базы данных
Язык PHP
Функции PHP A-C D-F
G-I J-M N-O P-R S-T U-Z
TurboPascal
ТКМ

Электротех. материалы

Лекции ТКМ

Электротехника
Общая электротехника
Электротехника
ТОЭ
Атомная энергетика
Реактор РБМК
Реактор ВВЭР
Реактор БН-600
Атомные станции
Юбилей Энергетики
Ядерное оружие
Готовые работы
Оформить заказ
Дипломные, курсовые
Купить контрольную
Контрольные, расчетные
Рефераты
Лабораторные работы
Курсовые расчеты
 
Переменные в переменных

В некоторых ситуациях бывает удобно использовать переменные, содержимое которых может динамически интерпретироваться как имя другой переменной. Рассмотрим типичный случай присваивания:

$recipe = "spaghetti";

Оказывается, строку "spaghetti" можно интерпретировать как имя переменной - для этого в команде присваивания перед именем исходной переменной ставится второй знак $:

$$recipe = "& meatballs";

Эта команда присваивает строку "& meatballs" переменной с именем "spaghetti". Следовательно, следующие две команды выводят одинаковые результаты:

print $recipe $spaghetti;

print $recipe $($recipe);

В обоих случаях будет выведена строка "spaghetti & meatballs".

Стандартные переменные

В РНР поддерживается ряд стандартных переменных, предоставляющих в распоряжение программиста довольно подробную информацию о внутренней конфигурации. Значения одних переменных задаются РНР, другие изменяются в зависимости от операционной системы и web-сервера, с которыми работает РНР.

Вместо подробного описания всех стандартных переменных я выделю лишь те переменные и функции, которые используются на практике многими программистами.

Чтобы получить полный список переменных web-сервера, окружения и РНР, определенных для вашей конфигурации системы, достаточно выполнить следующий фрагмент:

while (list($var,$value) = each($GLOBALS)) :

echo "<BR>$var => $value";

endwhile;

В результате выводится список наподобие приведенного ниже. Потратьте немного времени на просмотр полученных данных, а затем разберите приведенные примеры.

GLOBALS =>

HTTP_GET_VARS => Array

HTTP_COOKIE_VARS => Array

HOSTSIZE => 1000

HOSTNAME => server1.apress.com

LOGNAME => unstrung

HISTFILESIZE => 1000

REMOTEHOST => apress.com

MAIL -> /var/spool/mail/apress

MACHTYPE => 1386

TERM => vt100

HOSTTYPE => i386-linux

PATH =>

/usr/sbin:/sbin:/usr/local /bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/Java/bin

HOME => /root

INPUTRC => /etc/inputrc

SHELL => /bin/csh

USER => nobody

VENDOR => intel

GROUP => root

HOST => server1.apress.com

OSTYPE => linux

PWD => /www/bin

SHLVL => 3_ => /www/bin/httpd

DOCUMENT_ROOT => /usr/local/apress/site.apress

HTTP_ACCEPT => */*

HTTP_ACCEPT_ENCODING => gzip, deflate

HTTP_ACCEPT_LANGUAGE => it.en-us;q=0.5

HTTP_CONNECTION -> Keep-Alive

HTTP_HOST => www.apress.com

HTTP_USER_AGENT => Mozilla/4.0 (compatible; MSIE 5.0: Windows 98;

CNETHomeBuild051099)

REMOTE_ADOR => 127.0.0.1

REMQTE_PORT => 3207

SCRIPT_FILENAME => /usr/local/apress/site.apress/j/environment_vars.php

SERVER_ADDR => 127.0.0.1

SERVER_AOMIN => admin@apress.com

SERVER_NAME => www.apress.com

SERVERJORT => 80

SERVER SIGNATURE =>

Apache/1.3.12 Server at www.apress.com Port 80

SERVER_SOFTWARE => Apache/1.3.12 (Unix) PHP/4.0.1

GATEWAY_INTERFACE => CGI/1.1

SERVER_PROTOCOL => HTTP/1.1

REQUEST_METHOD => GET

QUERY_STRING =>

REQUEST_URI => /j/environment_vars.php

SCRIPT_NAME => /j/environment_vars.php

PATH_TRANSLAETD => /usr/local/apress/site.apress/j/environment_vars.php

PHP_SELF => /j/environment_vars.php

argv => Array

argc => 0

var => argc

value => argc

Как видите, стандартные переменные содержат разнообразные сведения - как полезные, так и не очень. Вы можете вывести любую из этих переменных по имени. Например, следующая команда выводит IP-адрес пользователя:

print "Hi! Your IP address is: $REMOTE_ADDR";

IP-адрес выводится в числовой форме (например, 208.247.106.187).

Кроме того, стандартные переменные могут использоваться для сбора информации о браузере и операционной системе пользователя. Команда

print "Your browser is: $HTTP_USER_AGENT";

возвращает информацию следующего вида:

Your browser is: Mozina/4.0 (compatible: MSIE 5.0; Windows 98: CNETHomeBuild051099)

Информация о браузере и операционной системе, в которой он работает, может пригодиться при построении страниц, рассчитанных на специфические форматы конкретных браузеров.

Для работы с массивами стандартных переменных необходимо включить директиву track_vars в файл php.ini. В РНР версии 4.0.3 директива track_vars включена постоянно.


Физика лабы
Элементарная математика Кратные интегралы Математический анализ
Векторный анализ Аналитическая геометрия Пределы функции Изучение функции Конспекты по математике Комплексные числа Дифференциальные уравнения Определенные интегралы Лекции по высшей математике Исследование функций Вычисление объема с помощью интегралов Алгеброические структуры