Сегодня начнем с внешних переменных.
HTML Формы (GET и POST)
После заполнения пользователем HTML формы PHP может
получить доступ к этим данным через переменные, имеющие такие же
название, что и поля в форме. Как всегда продемонстрирую на
примере:
<form action="foo.php3"
method="post">
Name: <input type="text"
name="name">
<input
type="submit">
</form>
Значит после того, как пользователь нажмет в форме
кнопку submit в php-скрипт foo.php3 методом
post передадутся данные из формы, а обратиться, например к
текстовому полю, из этого скрипта можно будет через переменную
$name. Кроме того, можно использовать и массивы в качестве
названий полей.
<form action="array.php"
method="post">
Name: <input type="text"
name="personal[name]">
Email: <input type="text"
name="personal[email]">
Beer:
<select multiple
name="beer[]">
<option
value="warthog">Warthog
<option
value="guinness">Guinness
</select>
<input
type="submit">
</form>
В результате это скрипт (array.php) может
вывести полученные результаты так:
echo "Имя: ".$personal["name"];
echo
"Email: ".$personal["email"];
for
($i=0;$i<sizeof($beer);$i++)
echo
$beer[$i]."<br>";
Кроме этого, как известно в форме в качестве
submit-кнопки можно применять картику <input type=image
src="image.gif" name="sub">. В таком случаем скрипту
возвращаются еще две дополнительных переменных, содержащих
координаты точки, на которой кликнули мышкой. Это sub_x и
sub_y.
HTTP Cookies
В PHP реализован также простой способ работы с куками.
С помощью функции SetCookie() можно их устанавливать, получать
значения, как и в случае с формами - по имени переменной. В случае,
если вы ожидаете получить несколько значений от куки имеет резон
использовать в качестве имени переменной - массив. Как в следующем
примере.
SetCookie ("MyCookie[]", "Testing",
time()+3600);
Существует только одно небольшое ограничение. Так-как
куки - это часть HTTP заголовка их следует посылать самыми первыми.
То есть грубо говоря, ваш скрипт должен начинаться с установки куки,
а потом уже заниматься выводом html кода. Еще один пример, уже
полноценного счетчика:
$Count++;
SetCookie ("Count", $Count,
time()+3600);
SetCookie ("Cart[$Count]", $item,
time()+3600);
Переменные окружения
И тут все так-же просто. Хотите узнать домашний
каталог? В юникс-системах этообычно переменная окружения с именем
HOME. Так узнавайте:
echo $HOME;
Вы также можете работать с переменными окружения
через функции getenv() и putenv()
КОНСТАНТЫ
Вы можете использовать не только переменный но и
константы с помощью функции define(). Взгляните на следующий
пример:
define("CONSTANT", "Hello world.");
echo
CONSTANT;
обратите внимание на то, что перед именем константы
не пишется символа переменной $ и это правильно.
Вот и все о константах и переменных.