简体   繁体   English

PHP is_array返回假?

[英]PHP is_array returning false?

I have used is_array many times. 我已经多次使用过is_array。 The variable is an array, see my code, but when i use is_array function it returned false 变量是一个数组,请参见我的代码,但是当我使用is_array函数时,它返回false

Any Ideas? 有任何想法吗?

Here is my code. 这是我的代码。

public function updateCategories($array = null)
{   
    echo gettype($array); // echos array
    if($array = null)
    {    
        return false;
    }    
    if(!is_array($array))
    {      
        echo "false"; // echos false
        return false;
    }

    foreach($array as $key => $val)
    {
        foreach($val as $Property => $Value)
        {
            if(!$this->updateCategoryProperty($key, $Property, $Value))
            {
                return false;
            }
        }
    }
}

您的if($array = null)不是比较,而是分配。

Additionally to Russel Dias answer: always write your "null-checks" in this way: 除了罗素·迪亚斯(Russel Dias)的答案:总是用这种方式写“空检查”:

if (null == $my_var)

now, if missing one "=", this will always get a real error, because you cannot assign something to null. 现在,如果缺少一个“ =”,这将始终会出现真正的错误,因为您无法将某些内容分配给null。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM