我想知道isset()
和!empty
之间有什么不同?
我知道isset()
测试变量是否设置而不是null,而
当变量设置为特定值时,empty()
可以返回true。
但是逻辑上当isset()
没有空(不使用“empty()”)时,文本或文本区域中有一个变量,所以我们不需要empty()
。
答案 0 :(得分:2)
isset
方法检查变量是否存在。另一方面,!empty
知道变量存在但需要检查其值。
答案 1 :(得分:1)
差异非常小,但足以避免两个陈述出错。声明如下变量时:
<?php
foo = "";
?>
根据您使用的内容,您将得到不同的值。 isset()
将返回true,因为变量foo设置为nothing。但是!empty
将返回false,因为变量foo不包含任何内容。基本上isset()
仅检查 NULL 值,其中!empty
检查被认为是0的所有内容(所以NULL,0,0.0等等,但0也作为字符串,例子)。