递归处理数组里参数变为单驼峰

/**
 * 循环遍历,将数组里的下划线都变成单驼峰
 * @param $arr
 * @return mixed
 */
function arrToUcFirst($arr){
    foreach ($arr as  $k=>$v){
        $k = strToUcFirst($k);
        if(is_array($v)){
            $v = arrToUcFirst($v);
        }

        $newA[$k] = $v;
        unset($arr[$k]);
    }
    return $newA;
}


 /**
  * 字符串变成单驼峰
  * @param $k
  * @param bool $ucfirst false 单驼峰,true 双驼峰
  * @return mixed|string
  */
function strToUcFirst($k,$ucfirst = false){

    if(($pos = strpos($k , '_')) !== false){
        $k = ucwords(str_replace('_', ' ', $k));
        $k = str_replace(' ','',lcfirst($k));
        $k = $ucfirst ? ucfirst($k) : $k;
    }
    return $k;
}

你可能感兴趣的:(递归处理数组里参数变为单驼峰)