Это значит, что empty()
фактически является точным эквивалентом конструкции !isset($var) || $var == false
.
Возвращает FALSE
, если var существует, и содержит непустое и ненулевое значение. В противном случае возвращает TRUE
. Следующие значения воспринимаются как пустые:
""
пустая строка0
целое число0.0
дробное число"0"
строкаNULL
FALSE
array()
пустой массив$var;
переменная объявлена, но не имеет значенияПростое сравнение empty() и isset():
$var = 0;
// Принимает значение true, потому что $var пусто
if (empty($var)) {
echo '$var или 0, или пусто, или вообще не определена';
}
// Принимает значение true, потому что $var определена
if (isset($var)) {
echo '$var определена, даже если она пустая';
}