Значения, хранящиеся в $_GET
и $_POST
, могут быть только строками или массивами, если они явно не установлены во время выполнения. Если у вас есть строка запроса query=string
, значение равно "string"
, если вы вместо этого используете: query=null
, значение будет "null"
. Обратите внимание, что это для строки.
Если вы отправите: query=
, значение будет ""
или пустая строка. Обратите внимание на различия между isset
и empty
. isset
будет истинным, если значение не равно нулю, тогда как empty
будет истинным, если значение оценивается как false
. Поэтому ""
будет верно для и isset
и empty
.
Если вы просто хотите проверить, задан ли для параметра строки запроса строковое значение "null"
, вы можете просто проверить $_GET['query']=='null'
(вы можете настроить регистр символов перед проверкой)