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就进行判断。

  • 相关阅读:
    体验cygwin纪实
    播布客视频PIT专用播放器MBOO2015
    rpm基本命令参考
    rhel7.x配置本地yum
    mtr网络连通性测试
    Oracle下载汇聚
    Spring Cloud心跳监测
    Hystrix的用法
    Redis系列十:缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级
    dubbo异步调用三种方式
  • 原文地址:https://www.cnblogs.com/wangyang0210/p/10775055.html
Copyright © 2011-2022 走看看