php:Illegal offset type in XXX错误原因及解决方法

php提示错误:Illegal offset type in XXX,导致这个错误的原因是不能使用实例化的对象来作为数组的索引,请检查数组变量的键名是否使用了实例化的对象变量或数组。

我遇到的错误就是因为调用数组的时候,数组变量的键名使用了数组。

代码如下:

  //格式化数据,调整类型和级别数据显示。$data为2维数组。  private function formatact($data){    if(is_array($data)){       $all = Config::get('ACTIVITY_LEVEL_LIST');       $atl = Config::get('ACTIVITY_TYPE_LIST');       foreach($data as $d => $v){         $data[$d]['level'] = isset($all[$v])?$all[$v]:'数据转换异常';         //错误写法,其中$all[$v]中的$v是一个一维数组。         $data[$d]['type_id'] = isset($atl[$v['type_id']])?$atl[$v['type_id']]:'数据转换异常';         //正确写法,调用$all[$v['type_id']]调用$v中的具体键名的值。       }       return $data;    }else{       return null;    }  }  

未经允许不得转载:吾爱主机之家 » php:Illegal offset type in XXX错误原因及解决方法