Array_values()期望参数1为array, null给定


array_values() expects parameter 1 to be array, null given

array_values()函数有什么问题?

我尝试将$updated_f分配给array()。

我得到警告:array_values()期望参数1是array, null给定

$this_params = array_merge_recursive($params, array('f' => array($filter['prefix'] => array($item['id'])))); 
if (isset($this_params['f'])) {
    $updated_f = array(); 
   //Updated code
    if(isset($this_params['f']) && is_array($this_params['f']) && count($this_params['f']) >0)
    {
      foreach($this_params['f'] as $f_key => $assoc_array) {
         $updated_f[$f_key] = array_values($assoc_array);   //Warning here
       } 
    }
    $this_params['f'] = $updated_f;
  }

array_values()函数只接受array类型变量

 $updated_f[$f_key] = array_values($assoc_array);   //Warning here

将line替换为

$updated_f[$f_key] = is_array($assoc_array)? array_values($assoc_array): array();