• PHP isset()、empty()、is_null()的使用区别详解


    PHP的isset()函数 一般用来检测变量是否设置 
    格式:bool isset ( mixed var [, mixed var [, ...]] )

    功能:检测变量是否设置

    返回值: 

    若变量不存在则返回 FALSE 
    若变量存在且其值为NULL,也返回 FALSE 
    若变量存在且值不为NULL,则返回 TURE 
    同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE 
    版本:PHP 3, PHP 4, PHP 5 
    更多说明: 
    使用 unset() 释放变量之后,它将不再是 isset()。 
    PHP函数isset()只能用于变量,传递任何其它参数都将造成解析错误。 
    检测常量是否已设置可使用 defined() 函数。 

    PHP的empty()函数 判断值为否为空 

    格式:bool empty ( mixed var ) 

    功能:检查一个变量是否为空 

    返回值: 

    若变量不存在则返回 TRUE 
    若变量存在且其值为""、0、"0"、NULL、、FALSE、array()、var $var; 以及没有任何属性的对象,则返回 TURE 
    若变量存在且值不为""、0、"0"、NULL、、FALSE、array()、var $var; 以及没有任何属性的对象,则返回 FALSE 
    版本:PHP 3, PHP 4, PHP 5 
    更多说明: 
    empty()的返回值=!(boolean) var,但不会因为变量未定义而产生警告信息。参见转换为布尔值获取更多信息。 
    empty() 只能用于变量,传递任何其它参数都将造成Paser error而终止运行。 
    检测常量是否已设置可使用 defined() 函数。

    3. is_null():

    bool is_null ( mixed $var )   (php.net官方文档的函数定义)
    当参数满足下面三种情况时,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 
    $myvar = ''; is_null($myvar);  // FALSE
     
  • 相关阅读:
    APIO dispatching
    奶牛抗议
    擦弹
    逃跑
    [Hnoi2016]网络
    [Ahoi2005]LANE 航线规划
    素数密度_NOI导刊2011提高(04)
    P2939 [USACO09FEB]改造路Revamping Trails(分层图最短路)
    洛谷P3396 哈希冲突(分块)
    洛谷P4332 [SHOI2014]三叉神经树(LCT)
  • 原文地址:https://www.cnblogs.com/supe/p/9410722.html
Copyright © 2020-2023  润新知