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

Vit*_*ynx 32 php isset

我不明白之间的差别isset()!empty().

因为如果设置了一个变量,它是不是与空的相同?

Nam*_*mbi 47

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

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

有关更多信息,请参阅此文章

  • ""不是空的."" 是空的. (5认同)

Bla*_*mba 16

出处:http://php.net/manual/en/types.comparisons.php此页显示的比较 empty(),is_null(),isset().

图片显示了完整的比较


Pra*_*t16 5

类型比较表给出了有关这些运算符的所有问题的答案

http://php.net/manual/en/types.comparisons.php