zoukankan      html  css  js  c++  java
  • PHP empty函数判断0返回真还是假?

    最近项目中,遇到一个字段是 “是否启用”值为0,1 在查询时没想就写了

    if ( isset($args_array['useFlg']) && !empty($args_array['useFlg']) ) {
    .....
    }

    于是查不到为0的时候,想了一下,应该是0是被认为是空.应该这样:

    if ( isset($args_array['useFlg']) && in_array($args_array['useFlg'] , array(0,1)) ) {
    .....
    }

    看了下php手册,备忘:

    如果 var 是非空或非零的值,则 empty() 返回 FALSE。换句话说,""0"0"NULLFALSEarray()var $var; 以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE

    <?php
    $var = 0;
    
    // 结果为 true,因为 $var 为空
    if (empty($var)) {  
        echo '$var is either 0 or not set at all';
    }
    
    // 结果为 false,因为 $var 已设置
    if (!isset($var)) { 
        echo '$var is not set at all';
    }
    ?>
    The following things are considered to be empty:
    
    "" (an empty string)
    0 (0 as an integer)
    0.0 (0 as a float)
    "0" (0 as a string)
    NULL
    FALSE
    array() (an empty array)
    var $var; (a variable declared, but without a value in a class)

    手册参见:http://php.net/manual/zh/function.empty.php

    如果认为此文对您有帮助,别忘了支持一下哦!

    作者:buyuCoder
    声明:本博客原创文字只代表本人工作中在某一时间内总结的观点或结论,与本人所在单位没有直接利益关系。非商业,未授权,贴子请以现状保留,转载时必须保留此段声明,且在文章页面明显位置给出原文连接。
  • 相关阅读:
    gan研究思路
    官方文档的学习
    构建Pytorch虚拟环境
    桌面显示【我的电脑】
    【VUE】计数器模块
    【品优购】字体图标定位的做法
    029垃圾分代回收机制
    03特殊for语句
    28包 package
    jdk特性
  • 原文地址:https://www.cnblogs.com/buyucoder/p/4682261.html
Copyright © 2011-2022 走看看