isset()
和 empty()
是 PHP 中两个常用的函数,它们都用于检查变量的状态
isset()
函数:
isset()
用于检查一个变量是否已经设置且不为 NULL
。如果变量存在且值不为 NULL
,则返回 true
,否则返回 false
。示例:
$var1 = 0;
$var2 = NULL;
$var3 = '';
var_dump(isset($var1)); // 输出:bool(true)
var_dump(isset($var2)); // 输出:bool(false)
var_dump(isset($var3)); // 输出:bool(false)
empty()
函数:
empty()
用于检查一个变量是否为空。如果变量存在且值为以下情况之一,则返回 true
:NULL
false
0
(整数零)'0'
(字符串零)''
(空字符串)[]
(空数组)示例:
$var1 = 0;
$var2 = NULL;
$var3 = '';
$var4 = [];
var_dump(empty($var1)); // 输出:bool(true)
var_dump(empty($var2)); // 输出:bool(true)
var_dump(empty($var3)); // 输出:bool(true)
var_dump(empty($var4)); // 输出:bool(true)
总结:
isset()
只检查变量是否设置且不为 NULL
,而 empty()
检查变量是否为空。isset()
会返回 false
,而 empty()
会认为变量是空的,返回 true
。0
或 '0'
,isset()
返回 true
,而 empty()
返回 true
。