php isset()与empty函数 的区别 (一)
isset 检查一个变量是否为空 返回值:变量只要不是null 返回true,否则返回false
既:变量的值为 "" (空字符串),
0 (作为整数的0),
0.0 (作为浮点数的0),
"0" (作为字符串的0),
FALSE,array() (一个空数组) 不是null返回true
变量的值为 null ,unset()后的变量, 没有赋值的变量 被认为null 返回false
empty 函数 检查一个变量是否为空:返回值 为空返回true,否则不为空返回 false;
既:变量的值为 "" (空字符串) ,
0 (作为整数的0) ,
0.0 (作为浮点数的0) ,
"0" (作为字符串的0) ,
NULL , FALSE ,array() (一个空数组) ,
$var; (一个声明了,但是没有值的变量),返回true
例:
$a = NULL;
if (empty($a)) {
echo "变量不存在"; //变量不存在
} else {
echo "变量存在";
}
if (!isset($a) || $a == false) {
echo "变量不存在"; //变量不存在
} else {
echo "变量存在";
}
if ($a == false) {
echo "=="; // ==
} else {
echo "!==";
}
这意味着 empty() 本质上与 !isset($var) || $var == false 等价。
了解什么是特征以及如何使用它们的最好方法是观察它们的本质

浙公网安备 33010602011771号