PHP 中的 'isset()' 和 '!empty()' 有什么区别?

2022-08-30 10:43:53

我不明白 和 之间的区别。isset()!empty()

因为如果设置了变量,它不等于不为空吗?


答案 1

ISSET 检查变量以查看是否已设置。换句话说,它会检查变量是否为 NULL 以外的任何值或未赋值。 如果变量存在并且具有 NULL 以外的值,则返回。这意味着设置了分配了 “”、0、“0” 或 FALSE 的变量,因此用于 。ISSETTRUETRUEISSET

EMPTY 检查变量是否为空。空被解释为:“”(空字符串),0(整数),0.0(浮点数)',“0”(字符串),NULL,FALSE,array()(空数组)和“$var;”(已声明的变量,但在类中没有值。

有关详细信息,请参阅此文章


答案 2

来源 :http://php.net/manual/en/types.comparisons.php此页面显示了,,.empty()is_null()isset()

The picture showing complete comparison here


推荐