我是靠谱客的博主 温婉犀牛,最近开发中收集的这篇文章主要介绍PHP中empty、is_null、isset的区别,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

本文介绍PHP中empty、is_null、isset三个函数的区别,他们都是用于判断变量是不为“空”的。

一句话简单理解

  • isset(),着重检测一个 变量是否设置和这个变量是否有具体的值,当变量满足这两种情况时isset()返回TRUE
  • empty(),为TRUE的情况,若变量不存在,或者变量存在且其值为""、0、“0”、NULL、FALSE、array()、var $var; 以及没有任何属性的对象,则返回 TURE。
$myvar = NULL; empty($myvar); // TRUE
$myvar = 0; empty($myvar); // TRUE
$myvar = FALSE; empty($myvar); // TRUE
$myvar = '';  empty($myvar); // TRUE
empty($some_undefined_var); // TRUE
  • is_null():
    当参数满足下面三种情况时,is_null()将返回TRUE,其它的情况就是FALSE
    1、它被赋值为NULL
    2、它还没有赋值
    3、它未定义,相当于unset(),将一个变量unset()后,不就是没有定义吗
$myvar = NULL; 
var_dump(is_null($myvar)); // TRUE
$myvar1;         
var_dump(is_null($myvar1)); // TRUE  Notice: Undefined variable
$num = 520;
unset($num);
var_dump(is_null($num));  //TRUE Notice: Undefined variable
var_dump(is_null($some_undefined_var)); //TRUE Notice: Undefined variable
 
$myvar = 0; is_null($myvar);     // FALSE
$myvar = FALSE; is_null($myvar); // FALSE

总结:

isset:非 null的都为true.
empty: “” , 0 ,0.0,“0”,null,false,array(),未定义var都为true.
is_null:值为null为true.

其他unset,用于销毁给他的变量

Example

  $v =  array(0=>'淘宝',1=>'天猫');
 if(!isset($v['type'])){
    $v['type'] = '京东';
    dump($v);
  }

结果:

array(3) {
  [0] => string(6) "淘宝"
  [1] => string(6) "天猫"
  ["type"] => string(6) "京东"
}

最后

以上就是温婉犀牛为你收集整理的PHP中empty、is_null、isset的区别的全部内容,希望文章能够帮你解决PHP中empty、is_null、isset的区别所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部