在 Yii2 中如何在使用 ArrayHelper::map() 方法时使用数组索引作为 $key?

In Yii2 how to use array index as $key when using ArrayHelper::map() method?

$lang = [
   'en' => ['id'=>'1', 'name' => 'English', 'short' => '1', 'active' => '1',],
   'tn' => ['id'=>'2', 'name' => 'Tamil', 'short' => '2', 'active' =>'1',],
]; // sample array`    

在yii2中我可以使用数组映射方法如下。 ArrayHelper::map($lang,'id','name');

但是如何把数组索引('en'和'tn')放在'id'的地方 ex:ArrayHelper::map($lang, array_index,'name');

谢谢

据我所知,这不是 ArrayHelper 的功能,但您不能自己制作吗?试试这样的东西:

function YourArrayHelper($arr)
{
    $returnArr = [];
    foreach($arr as $key => $value)
    {
        $returnArr[$key] = $value['name'];
    }
    return $returnArr;
}

$types = [
    'en' => ['id'=>'1', 'name' => 'Sell', 'short' => '1', 'active' => '1',],
    'tn' => ['id'=>'2', 'name' => 'buy','short' => '2', 'active' =>'1',],
]; // sample array

var_dump(ArrayHelper::map($types,'id','name'));
echo '<br>';
var_dump(YourArrayHelper($types));