zoukankan      html  css  js  c++  java
  • PHP——isset和empty

    前言

    对于这两个PHP函数大家肯定都很熟悉,但是其二者的区别又有那些呢?

    对比

    isset  | 检测变量是否被设置过

    1. 变量不存在,返回FALSE

    2. 变量存在且其值为NULL,返回FALSE

    3. 变量存在且值不为NULL,返回TURE

     empty | 检测变量是否为空

    1.变量存在且值为非空非零的值,返回FALSE

    2.变量存在且值为空为零时,返回TRUE

    PHP变量被认为空的几种情况

    1."" (空字符串)

    2.0 (作为整数的0)

    3.0.0 (作为浮点数的0)

    4."0" (作为字符串的0)

    5.NULL

    6.FALSE

    7.array() (一个空数组)

    8.$var; (一个声明了,但是没有值的变量)

    例子

    <?php
    $var = 0;
    
    // true
    if (empty($var)) {
        echo 'true, $var为空';
    }
    
    // true
    if (isset($var)) {
        echo 'true, $var被设置过';
    }
    ?>

     由此可见,当判断一些变量的时候,不能一味的使用empty或者isset,应该根据实际的情况去使用,如:用户的昵称

    如果用户的昵称就是0那你用empty判断不就出问题了嘛,但是如果用户的昵称为空字符串时,用isset判断也同样会有问题,

    所以这种情况下就不能简单的用empty或者isset就进行判断。

  • 相关阅读:
    杜教筛学习笔记
    AtCoder Beginner Contest 188 F
    求和公式
    洛谷P4848 崂山白花蛇草水 权值线段树+KDtree
    二次剩余学习笔记
    Miller Rabin素数检测与Pollard Rho算法
    半平面交学习笔记
    凸包习题总结
    多项式半家桶
    CF997解题报告
  • 原文地址:https://www.cnblogs.com/wangyang0210/p/10775055.html
Copyright © 2011-2022 走看看