zoukankan      html  css  js  c++  java
  • 11月1日上午PHP------empty、 is_null、isset、unset的区别

    1、empty

    判断一个变量是否为“空”。
    null、false、00、0、’0′、』。为以上值的变量在检测時都将返回true。

     

    2、isset

    判断一个变量是否已经设置。
    0、00、’0′、』、’ ‘、false、’false’、’null’都返回true。
    只有值为null的变量才返回true

    3、if 判断式

    0、00、0.0、’0′、』、false、null返回false
    ‘00′、’0.0′、’null’、’false’、’ ‘返回true

    is_null, empty, isset, unset 我们先来看看这4个函数的描述。

    isset 判断变量是否已存在(配置)
    unset 把变量删除(释放)掉
    empty 判断变量是否为空
    is_null 判断变量是否为NULL 
    ok,已经开始搞人了。那么开始,这4个函数中除了unset,其他3个都是判断函数,unset首先出局,因为他不会搞错,其次是is_null,我们可以把它看成是!isset,是isset的一个逆操作,下面一张表可以很清楚的说明他们之间的关系:

    变量                             empty          is_null          isset
    $a=””                          true               false              true
    $a=null                      true               true              false
    var $a                         true              true               false
    $a=array()               true               false              true
    $a=false                    true               false              true
    $a=15                        false              false               true
    $a=1                           false              false               true
    $a=0                          true               false               true
    $a=”0”                      true               false                true
    $a=”true”                false               false              true
    $a=”false”               false               false               true

    从中我们可以发现只要变量是否为” “或者0,或者是false和null,只要是这些值empty都会返回true,而isset是判断变量是否存在,只要你这个变量不是null或未赋值,返回结果都是true,而is_null正好是isset的反结果。

    当然如果只是想做如下工作:
    echo !isset($_GET['a']);  //如果得不到变量a的值
    echo empty($_GET['a']);  //如果变量a的值是空

    那么结果都是一样的,都可以用。

  • 相关阅读:
    pads layout模块复用-两个不同功能的复用模块功能
    摘抄:一个电容都能讲得如此全面实用,不分享就太可惜了!
    layout需要非常了解清楚的内容
    摘抄:一篇文章看看能不能讲透“阻抗匹配”
    python2.7/3.7安装NumPy函数库的一种方法及小心得
    3.C#基础之基本概念(完成)
    2.C#基础之词法结构(完成)
    .NET、.NET框架、ASP.NET和C#的关系(完成)
    1.C#基础之简介(完成)
    2.LINQ(新手写的!新手写的!新手写的!)(未完成)
  • 原文地址:https://www.cnblogs.com/xiaofox0018/p/6019605.html
Copyright © 2011-2022 走看看