PHP中 empty() ,isset(), is_null() 区别实例测试
很多同学在纠结empty() ,isset(), is_null() 三者的区别,讨论的很激烈不如我们写个代码来测试下。
我们测试的实例是这样的:
<?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) );
那么最终的结果如下:
那么总结下:
empty()
只要数据类型是否为空或假,empty()就输出true。
isset()
只能用来判断是否为NULL和未定义。
is_null()
判断值是否为空,字面意思