Если вы попытаетесь получить доступ к элементу массива, который не существует, результат будет null
.
$foo = $_GET['bar']; //$foo is now null
Стоит отметить, что если вы используете слабый оператор сравнения ==
вместо строгого сравнения ===
, то ''
будет считаться нулевым.
Недостатком приведенного выше кода является то, что он будет генерировать уведомление при доступе к массиву с несуществующим индексом, который немного запутан.
Следовательно, вы должны проверить, установлено ли значение, прежде чем присваивать содержащееся значение переменной.
if ( !isset($_GET['bar']) ){
//handle error or assign default value to $foo
}else{
$foo = $_GET['bar'];
}
Если вы хотите иметь значение по умолчанию и заменять это значение по умолчанию, только если существует значение $ _GET, вы можете использовать условный оператор (прокрутите вниз до «Тернарный оператор»)
$foo = isset($_GET['bar']) ? $_GET['bar'] : 'default value';