Warning: Invalid argument supplied for foreach() in 的解决方法

在php中,foreach遍历数组如果不是一个有效数组,php会报一个错误警告
“Warning: Invalid argument supplied for foreach() in ……”

,很多时候这个数组是取自某些数据源,如果数组为空,就会出现错误警告,为了防止这种错误警告,应该在遍历之前对数组变量进行一个判断,如果该变量不是一个有效数组,可以对该变量加个if判断语句,还可以设置该变量为一个空数组即array():


foreach($arr as $key => $value)
           {
                代码块
            }

改为:

if(is_array($arr))    //add
{                  
          foreach($arr as $key => $value)
         {
                代码块
          }
}   //add

或者

           foreach((array)$arr as $key => $value)
         {
                代码块
          }

你可能感兴趣的:(PHP)