インデックス下線付き配列をアルパカインデックス名付き配列に変換

868 ワード

インタフェースコードを書くときは、アルパカ式の名前を統一して返すことがよくあります.しかし、データベースは、次のように線で命名されたフィールドです.次のコードは、配列をアルパカ式に命名された配列に直接変換します.数次元配列にかかわらず.みんなに分け合う
/*
 *                   
 * @pram $arr    
 * @pram $ucfirst       ,false   ,TRUE   
 */
public static function camelCase($arr,$ucfirst = FALSE)
{
    if (!is_array($arr))
    {   //         
        return $arr;
    }
    $temp = [];
    $keys = '';
    foreach ($arr as $key => $value)
    {
        $key1=self::convertUnderline($key,FALSE);
        $value1=self::camelCase($value);
        $temp[$key1]=$value1;
    }
    return $temp;
}


//              
public static function convertUnderline($str, $ucfirst = true)
{
    $str = ucwords(str_replace('_', ' ', $str));
    $str = str_replace(' ', '', lcfirst($str));
    return $ucfirst ? ucfirst($str) : $str;
}