Home  >  Article  >  Backend Development  >  深入PHP empty(),isset(),is_null()的实例测试详解_PHP

深入PHP empty(),isset(),is_null()的实例测试详解_PHP

WBOY
WBOYOriginal
2016-06-01 12:06:39720browse

有关 PHP 的 empty(),isset() 还有 is_null() 这三个函数的用法讨论得已经很多了,而且很多资料也未必能说得很清楚。这里再重复一次,但不是从概念去说,直接用程序例子来说话,应该记忆会比较深刻些。

测试的类型如下:
复制代码 代码如下:
 $a;
 $b = false;
 $c = '';
 $d = 0;
 $e = null;
 $f = array();

 ?>

empty()

首先是empty的var_dump输出:
复制代码 代码如下:
 var_dump(empty($a));
 var_dump(empty($b));
 var_dump(empty($c));
 var_dump(empty($d));
 var_dump(empty($e));
 var_dump(empty($f));
 ?>

程序输出为:
 bool(true)
 bool(true)
 bool(true)
 bool(true)
 bool(true)
 bool(true)

从代码中可以看出,只要数据类型是否为空或假,empty()就输出true。
isset()

再看看isset的输出:
 var_dump(isset($a));
 var_dump(isset($b));
 var_dump(isset($c));
 var_dump(isset($d));
 var_dump(isset($e));
 var_dump(isset($f));

 // 输出
 bool(false)
 bool(true)
 bool(true)
 bool(true)
 bool(false)
 bool(true)

可以看出isset()只能用来判断是否为NULL和未定义。
is_null()

最后是is_null的输出:
 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));

 // 输出
 bool(true)
 bool(false)
 bool(false)
 bool(false)
 bool(true)
 bool(false)

is_null 字面意思了。

由此可见 empty() 可以用来判定所有的数据类型是否为空或假,而 is_null 与 isset 基本一样,只能用来判断是否为NULL和未定义。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn