PHP中 empty() ,isset(), is_null() 区别实例测试

Cleey 发布于 2015/08/31 10:35
阅读 942
收藏 4
PHP

MySQL连接为什么挂死了?别踩坑!>>>

很多同学在纠结empty() ,isset(), is_null() 三者的区别,讨论的很激烈不如我们写个代码来测试下。

原文代码格式要清晰点(http://www.cleey.com/blog/single/id/782.html

我们测试的实例是这样的:

<?php 

$a; $b = 0; $c = false; $d = ''; $e = array(); $f = null; var_dump( empty($a) ); var_dump( empty($b) ); var_dump( empty($c)) ; var_dump( empty($d) ); var_dump( empty($e) ); var_dump( empty($f) ); var_dump( isset($a) ); var_dump( isset($b) ); var_dump( isset($c)) ; var_dump( isset($d) ); var_dump( isset($e) ); var_dump( isset($f) ); var_dump( is_null($a) ); var_dump( is_null($b) ); var_dump( is_null($c)) ; var_dump( is_null($d) ); var_dump( is_null($e) ); var_dump( is_null($f) ); 

那么最终的结果如下:

QQ截图20150820113907.png

那么总结下:

empty()

只要数据类型是否为空或假,empty()就输出true。

isset()

只能用来判断是否为NULL和未定义。

is_null()

判断值是否为空,字面意思

加载中
0
eechen
eechen
个人理解:
PHP里  empty($foo) 等价于 !isset($foo) || $foo=='' || $foo==NULL
PHP里 !empty($foo) 等价于 isset($foo) && $foo!='' && $foo!=NULL
0
如花花
如花花

话说  http://www.cleey.com 这个网站的样式不错


Cleey
Cleey
多谢,bootstrap+自己diy
0
阿弥陀
阿弥陀
为啥0也不可以
0
s
segfal
可以到这里测试 PHP在线执行
返回顶部
顶部