zoukankan      html  css  js  c++  java
  • PHP 检测变量是否为空

    PHP 中以下值得计算结果为 false:

    关键字 boolean false
    整型 integer 0
    浮点型 double 0.0
    字符串 string "" 
    字符串 string  "0" 
    数组 array  array() 
    对象  object  空对象 php<5 
    null  null  NULL 

    例如 字符串"0":

    <?php
    
    $number = "0";
    if($number) {
    	echo "string "0" is not false 
    ";
    } else {
    	echo "string "0" is false 
    "; // 输出:string "0" is false
    }
    
    if(empty($number))   {
    	echo "string "0" is false 
    "; // 输出:string "0" is false
    } else {
    	echo "string "0" is not false 
    "; 
    }
    

    空数组:

    <?php
    
    $arr= array();
    
    if($arr) {
    	echo 'array $arr is not false'."
    ";
    } else {
    	echo 'array $arr is false'."
    "; // 输出:array $arr is false
    }
    
    if(empty($arr))   {
    	echo 'array $arr is false'."
    "; // 输出:array $arr is false
    } else {
    	echo 'array $arr is not false'."
    ";
    }
    

      

    空对象在 PHP 5 以上版本中计算结果不为 false:

    $obj=(object)array();
    
    if($obj) {
    	echo '$obj is not false'."
    "; // 输出:$obj is not false
    } else {
    	echo '$obj is false'."
    ";
    }
    
    if(empty($obj))   {
    	echo '$obj is false'."
    ";
    } else {
    	echo '$obj is not false'."
    "; // 输出:$obj is not false
    }
    
    

     

    注意:字符串"0.0"、字符串"00"、包括一个空格字符的字符串" "、字符串"false" 、整型 -1 都不为 false:

    <?php
    
    $number = "0.0";
    if($number) {
    	echo "string "0.0" is not false 
    "; // 输出:string "0.0" is not false
    } else {
    	echo "string "0.0" is false 
    ";
    }
    
    if(empty($number))   {
    	echo "string "0.0" is false 
    ";
    } else {
    	echo "string "0.0" is not false 
    "; // 输出:string "0.0" is not false 
    }
    

      

    正确地检查一个变量是否为空应该使用:

    <?php
    
    if (empty($var)) { ... }
    

      

  • 相关阅读:
    LeetCode 209. 长度最小的子数组(Minimum Size Subarray Sum)
    LeetCode 快乐数(Happy Number)
    Deep & Cross Network总结
    CTR预估之LR与GBDT融合
    近似最近邻算法-annoy解析
    FM与FFM深入解析
    LeetCode 222. 完全二叉树的节点个数(Count Complete Tree Nodes)
    js 时间与时间戳的转换
    table 样式美化
    c# string 和 byte[]数组之间转换
  • 原文地址:https://www.cnblogs.com/dee0912/p/5571827.html
Copyright © 2011-2022 走看看