Теперь, перед началом использования суперглобальных переменных, следует предупредить о том, что они часто используются злоумышленниками, пытающимися отыскать средства для атаки и вмешательства в работу вашего веб-сайта. Они загружают в $_POST
, $_GET
или в другие суперглобальные переменные вредоносный код, например команды Unix или MySQL, которые, если вы по незнанию к ним обратитесь, могут разрушить или отобразить незащищенные данные.
Именно поэтому перед использованием суперглобальных переменных их всегда следует подвергать предварительной обработке. Для этого можно воспользоваться PHP-функцией htmlentities
. Она занимается преобразованием всех символов в элементы HTML. Например, символы «меньше чем» и «больше чем» (<
; и >
) превращаются в строки <
; и >
, то же самое делается для перевода в безопасное состояние всех кавычек, обратных слешей и т. д.
Поэтому более подходящий способ доступа к $_SERVER
(и другим суперглобальным переменным) выглядит следующим образом:
$came_from = htmlentities($_SERVER['HTTP_REFERRER']);
В этой главе были заложены надежные основы, необходимые для работы с РНР. В следующей главе мы приступим к практическому использованию изученного материала для построения выражений и управления ходом программы. Иными словами, приступим к реальному программированию.
Но перед переходом к новой главе рекомендуем проверить свои знания, ответив на некоторые (или на все) вопросы, чтобы убедиться в том, что вы полностью усвоили содержимое этой главы.
Суперглобальные переменные | Проверка знаний: Введение в PHP |