用给定的各个键替换阵列键 [英] replace array keys with given respective keys

查看:110
本文介绍了用给定的各个键替换阵列键的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个像下面的数组

$old = array(
       'a' => 'blah',
       'b' => 'key',
       'c' => 'amazing',
       'd' => array(
                0 => 'want to replace',
                1 => 'yes I want to'
              )
       );

我还有另一个数组,该数组的键替换为键信息.

I have another array having keys to replace with key information.

$keyReplaceInfoz = array('a' => 'newA', 'b' => 'newB', 'c' => 'newC', 'd' => 'newD');

我需要将数组$old的所有键替换为数组$keyReplaceInfo中的相应值.

I need to replace all keys of array $old with respective values in array $keyReplaceInfo.

输出应该像这样

$old = array(
       'newA' => 'blah',
       'newB' => 'key',
       'newC' => 'amazing',
       'newD' => array(
                0 => 'want to replace',
                1 => 'yes I want to'
              )
       );

我必须手动执行以下操作.我期待更好的选择.谁能提出更好的方法来实现这一目标?

I had to do it manually as below. I am expecting better option. can anyone suggest better way to accomplish this?

$new = array();
foreach ($old as $key => $value)
{
     $new[$keyReplaceInfoz[$key]] = $value;
}

我知道这可以更简单.

推荐答案

array_combine(array_merge($old, $keyReplaceInfoz), $old)

我认为这看起来比您提出的要容易.

I think this looks easier than what you posed.

这篇关于用给定的各个键替换阵列键的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆