📅  最后修改于: 2023-12-03 15:15:53.548000             🧑  作者: Mango
在 PHP 中, isset() 和 empty() 都是用来检查变量是否存在,但两者的检查内容有所不同。
isset() 函数用来检查变量是否已经被初始化,如果已经被初始化并且不是 NULL,则返回 true;否则,返回 false。
例如:
<?php
$var = "";
if (isset($var)) {
echo "变量已被初始化";
} else {
echo "变量未被初始化";
}
?>
上面的代码将输出 "变量已被初始化",因为 $var 已经被初始化,虽然它的值是空字符串。
empty() 函数用来检查一个变量是否为空值,包括:
例如:
<?php
$var1 = "";
$var2 = "0";
$var3 = NULL;
$var4 = array();
if (empty($var1)) {
echo '$var1 为空';
}
if (empty($var2)) {
echo '$var2 为空';
}
if (empty($var3)) {
echo '$var3 为空';
}
if (empty($var4)) {
echo '$var4 为空';
}
?>
上面的代码将输出:
$var1 为空
$var2 为空
$var3 为空
$var4 为空
因为它们都是空值。
注意:当 $var 定义了但未赋值时,isset($var) 返回 false,empty($var) 返回 true。