Fastest way to add prefix to array keys?

后端 未结 9 1491
迷失自我
迷失自我 2020-11-28 14:29

What is the fastest way to add string prefixes to array keys?

Input

$array = array(
 \'1\' => \'val1\',
 \'2\' => \'val2\',
);
<
9条回答
  •  暗喜
    暗喜 (楼主)
    2020-11-28 14:53

    Could do this in one long line I presume:

    $array = array_combine(
        array_map(function($k){ return 'prefix'.$k; }, array_keys($array)),
        $array
    );
    

    Or for versions of PHP prior to 5.3:

    $array = array_combine(
        array_map(create_function('$k', 'return "prefix".$k;'), array_keys($array)),
        $array
    );
    

    There's probably dozens of ways to do this though:

    foreach ($array as $k => $v)
    {
        $array['prefix_'.$k] = $v;
        unset($array[$k]);
    }
    

提交回复
热议问题