Что делает $ _GET, возвращаются, когда индекс не установлен? (Ничего не мог найти в php руководстве о $ _GET.)
Я записал это для проверки, если $ _GET ['идентификатор'] isset - и если это не, $id набора ко лжи:
<?php $id = (isset($_GET['id'])) ? $_GET['id'] : false ?>
$ _ GET - это просто обычный массив, поэтому он ведет себя точно так же, как любой другой массив.
Это означает, что он вернет переменной NULL и вызовет уведомление «undefined index», когда вы вызовете несуществующий индекс.
Единственное, о чем вам нужно знать при использовании $ _GET, - это то, что он содержит небезопасные (изменяемые пользователем) данные
Неустановленные индексы имеют значение NULL. Доступ к ним приведет к появлению уведомления (если ваш уровень ошибки не установлен на проглатывание уведомлений).
В руководстве есть пример: PHP: $ _GET .
Соответствующая часть примера сценария:
if(isset($_GET["a"])) echo "a is set\n";
Эта часть сценария выводит "a is set", когда a
передается в качестве параметра через URL. http: //path/to/script.php? A
Если индекс не задан, выполнение isset ()
для этого индекса в $ _ GET
возвращает false.
$ _ GET
- это суперглобальный массив :
Таким образом, он следует правилам доступа к ключам массива:
Попытка доступа ключ массива, который не было определено то же самое, что и доступ к любому другому неопределенному переменная: ошибка уровня
E_NOTICE
сообщение будет выдано, и результат будетNULL
.