Необходимо чётко понимать разницу между isset и empty. Часто новички путают эти две функции, давайте разберёмся как именно работает каждая из них.
isset()
isset() — проверяет переменную на существование, а также, что её значение не null. Если переменная существует и её значение не null, то функция вернёт true, все остальные случаи — это false;
empty()
empty() — проверяет переменную на существование и на пустоту. Если в переменной есть какое-то не пустое значение или true, то функция вернёт false, всё остальные случаи — это true;
Таблица ниже поможет вам лучше понять как работает isset и empty
Выражение |
isset($a) |
empty($a) |
---|---|---|
unset($a) |
false |
true |
$a = null |
false |
true |
$a = 0 |
true |
true |
$a = «» |
true |
true |
$a = array() |
true |
true |
$a = false |
true |
true |
$a = true |
true |
false |
$a = 7 |
true |
false |
Толково