当前位置:首页 > PHP教程 > php函数 > 列表

实例详解php中empty、isset、isnull三者之间的区别

发布:smiling 来源: PHP粉丝网  添加日期:2022-05-24 14:27:51 浏览: 评论:0 

empty

如果变量是非空或非零的值,则 empty() 返回 FALSE。换句话说,""、0、"0″、NULL、FALSE、array()、var $var、未定义;以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。

代码示例:

  1. $a = 0; 
  2.  
  3. $b = ''
  4.  
  5. $c = array(); 
  6.  
  7. if (emptyempty($a)) echo '$a 为空' . ""
  8.  
  9. if (emptyempty($b)) echo '$b 为空' . ""
  10.  
  11. if (emptyempty($c)) echo '$c 为空' . ""
  12.  
  13. if (emptyempty($d)) echo '$d 为空' . ""
  14.  
  15. // 以上输出皆为空 

isset

如果变量存在(非NULL)则返回 TRUE,否则返回 FALSE(包括未定义),变量值设置为:null,返回也是false;unset一个变量后,变量被取消了,注意,isset对于NULL值变量,特殊处理。

代码示例:

  1. $a = ''
  2.  
  3. $a['c'] = ''
  4.  
  5. if (!isset($a)) echo '$a 未被初始化' . ""
  6.  
  7. if (!isset($b)) echo '$b 未被初始化' . ""
  8.  
  9. if (isset($a['c'])) echo '$a 已经被初始化' . ""
  10.  
  11. // 显示结果为 
  12.  
  13. // $b 未被初始化 
  14.  
  15. // $a 已经被初始化 

is_null

检测传入值【值,变量,表达式】是否是null,只有一个变量定义了,且它的值是null,它才返回TRUE . 其它都返回 FALSE 【未定义变量传入后会出错!】

代码示例:

  1. $a = null; 
  2.  
  3. $b = false; 
  4.  
  5. if (is_null($a)) echo '$a 为NULL' . ""
  6.  
  7. if (is_null($b)) echo '$b 为NULL' . ""
  8.  
  9. if (is_null($c)) echo '$c 为NULL' . ""
  10.  
  11. // 显示结果为 
  12.  
  13. // $a 为NULL 
  14.  
  15. // Undefined variable: c

Tags: empty isset isnull

分享到: