PHP is_array返回false?

时间:2012-01-06 00:27:26

标签: php arrays multidimensional-array

我多次使用过is_array。 变量是一个数组,请参阅我的代码, 但是当我使用is_array函数时,它返回false

任何想法?

这是我的代码。

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;
            }
        }
    }
}

2 个答案:

答案 0 :(得分:13)

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

答案 1 :(得分:1)

除了Russel Dias回答:总是以这种方式写下“空检查”:

if (null == $my_var)

现在,如果缺少一个“=”,这将始终出现真正的错误,因为您无法将某些内容指定为null。