Это интересная тема. Сам сервер может помочь вам показать массив переменных. В этом массиве $_SERVER содержится информация о сервере и среде исполнения. $_SERVER может содержать: заголовки, пути, местоположение скриптов. При помощи отладочной функции print_r() вы можете просмотреть массив $_SERVER. Если вы неуверенно работаете с массивами, то читайте статью массив в PHP.
$arr = $_SERVER;
print_r($arr);
/*
Array
(
[HTTP_HOST] => php
[HTTP_USER_AGENT] => Mozilla/5.0 (Windows NT 6.1; WOW64)
[HTTP_REFERER] => http://php/server/
[SERVER_NAME] => php
[SERVER_ADDR] => 127.0.0.1
[SERVER_PORT] => 80
[REMOTE_ADDR] => 127.0.0.1
[SERVER_ADMIN] => admin@example.com
[REQUEST_METHOD] => GET
[REQUEST_URI] => /server/server.php
[SCRIPT_NAME] => /server/server.php
[PHP_SELF] => /server/server.php
[REQUEST_TIME] => 1436976950
...
)
*/
Я не буду описывать все переменные и их значения. Остановлюсь на самых интересных. Я не буду в прописывать $_SERVER['элемент массива'] каждый раз. Просто подставляйте нужный элемент массива между кавычками. Приступим )))
-
PHP_SELF покажет вам имя файла, относительно документа. Вы можете использовать константу __FILE__ для определения полного пути до текущего файла.
-
SERVER_ADDR - это ip-адрес сервера. Очень часто используют эту серверную переменную. REQUEST_METHOD покажет вам метод запроса к странице GET, HEAD, POST, PUT.
-
DOCUMENT_ROOT - покажет вам директорию корня документа. Он покажет полный путь до скрипта. Очень часто применяют эту переменную для создания путей к скриптам. Если вы используете крон или планировщик, то ему нужно указать полный путь до скрипта, в противном случае будет ошибка.
-
HTTP_REFERER применяют для определения адреса страницы, с которой пришел пользователь. Если у вас скрипт с оплатой, то рекомендую вам использовать эту переменную. Если вы хотите отследить адрес страницы, с которой приходят пользователи на ваш сайт, то смело применяйте HTTP_REFERER.
-
Часто для определения типа браузера используют HTTP_USER_AGENT. Вы можете для некоторых пользователей запретить доступ на сайт, если они используют браузер, который запрещён вашим скриптом.
-
REMOTE_ADDR поможет вам определить ip-адрес пользователя. Чаще всего при добавлении комментариев применяют эту переменную. Часто в таблице базы данных рядом с именем пользователя располагают его ip-адрес. Вы всегда сможете заблокировать этого пользователя по ip-адресу. Если у пользователя статический ip-адрес, то блокировка хорошо сработает. Если у пользователя динамический ip-адрес, то ему достаточно перезагрузить модем и пользователь снова попадёт на ваш сайт.
-
REQUEST_URI покажет вам путь до вашей страницы. Например, '/page.php/'.PATH_INFO содержит путь содержащийся после имени скрипта, но до строки запроса (если доступно). Например если адрес страницы такой http://training-web.ru/php/posts/array/param?a=1, то переменная покажет вам /pagea/array. Одним словом, значение между скриптом и $_GET-параметрами. Скрипт - данные - $_GET-параметры. Часто при выходе из админской зоны программисты записывают в сессию путь страницы, после которой был осуществлён выход. В этом случае нужно очистить путь от лишних GET-параметров, а потом записывать очищенный путь в сессию.