PHP提供了三个用于测试变量值的函数,分别是isset(),empty(),is_null(),他们都返回布尔值,但是也有区别。
通过以下表格查看:
对比项 | isset()方法 | empty()方法 | is_null方法 |
""(空字符串) | true | ture | false |
" "(一个空格) | true | false | false |
FALSE | true | true | false |
TRUE | true | false | false |
array()(一个空数组) | true | true | false |
NULL | false | true | true |
"0"(字符串0) | true | true | false |
0(整型0) | true | true | false |
0.0(浮点型) | true | true | false |
$a(未赋值变量) | false | true | false |
1、isset()函数用来检测一个变量是否已声明并且值不为NULL,也就是说只有在值不为NULL时返回真值
2、empty()用来检测一个变量是否为空如果有如下情况返回真值:
1)空字符串
2)false
3)空数组
4)NULL
5)0
6)0.0
7)unset之后的变量
8)字符串0
3、is_null()用来判断变量内容是否是null值,返回真值的条件仅仅是变量为null时,所以他是isset()的反函数,从上表中也可以看出来