我做了很多研究,但无法找到这三个之间的区别。所以我做了一个简短的例子,希望对我们有所帮助。
这是这三个表格的表述
Case Empty() isset() is_null()
1. $a=NULL 1 0 1
2. Not exists 1 0 1/Warning
3. $a='' 1 1 0
4. $a='NULL' 0 1 0
5. $a='testing' 0 1 0
这是实现它的代码。
答案 0 :(得分:2)
PHP具有不同的功能,可用于测试变量的值。为此,三个有用的功能是isset()
,empty()
和is_null()
。所有这些函数都返回一个布尔值。如果未正确使用这些功能,则可能导致意外结果。
isset()
和empty()
通常被视为相反的函数,但这并不总是正确的。
isset
— 确定是否设置了变量并且该变量不为NULL
换句话说,仅当变量不为null时,它才返回true。
empty
— 确定变量是否为空
换句话说,如果变量为空字符串,false,array(),NULL,“ 0”,0和未设置的变量,则它将返回true。
is_null
— 查找变量是否为NULL
换句话说,仅当变量为null时,它才返回true。 is_null()与isset()相反,不同之处在于isset()可以应用于未知变量,但is_null()仅适用于声明的变量