【问题标题】:Is this the correct way of checking empty array?这是检查空数组的正确方法吗?
【发布时间】:2016-05-10 20:44:53
【问题描述】:

我想检查数组是否为空,我为它写了几行代码

if(array() == $myArray){
   echo "Array";
}

if(array() === $myArray){
   echo "Array";
}

我很困惑该使用哪一个,因为第二个条件也检查类型。但我认为在数组的情况下,我们不需要检查它们的类型。 请任何人都可以建议我使用哪一个。

【问题讨论】:

标签: php arrays if-statement comparison


【解决方案1】:

您可以使用下面的empty() 函数来检查它

<?php   
    if(empty($myArray)) {
      //condition
    }
 ?>

【讨论】:

    【解决方案2】:
    if (! count($myArray)) {
        // array is empty
    }
    

    让 php 做它的事情并检查布尔值。

    【讨论】:

      【解决方案3】:

      使用empty:

      if (empty($myArray)) {
         ...
      }
      

      【讨论】:

        【解决方案4】:

        试试这个:

        <?php
        
        $array = array();
        if(empty($array))
        {
         echo "empty";
        } else
        {
        echo "some thing!";
        }
        ?>
        

        【讨论】:

          【解决方案5】:

          最好先检查它是否是数组,然后再检查它是否为空。我总是这样使用,因为每当我只检查某个地方的空条件时,我都没有得到预期的结果

          if( is_array($myArray) and !empty($myArray) ){
              .....
              .....
          }
          

          【讨论】:

            【解决方案6】:
                <?php 
            
            if(empty($yourarry)){
            
            }
            

            if(isset($yourarry)){
            
            
            }
            

            if(count($yourarry)==0){
            
            }
            

            【讨论】:

              【解决方案7】:

              这取决于:

              • 如果您的 数组 也可以是实现 Countable 的对象,请使用 count==0
              • 否则使用empty

              array() == $myArray 不可读,你应该避免它。你可以see the difference between count and empty here

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2018-09-18
                • 1970-01-01
                • 2018-09-25
                • 1970-01-01
                • 1970-01-01
                • 2020-02-14
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多