PHP-用预定义的键列表替换数组键
我有一个多维数组,是我在废弃一个web之后得到的PHP-用预定义的键列表替换数组键,php,arrays,multidimensional-array,key,Php,Arrays,Multidimensional Array,Key,我有一个多维数组,是我在废弃一个web之后得到的 Array ( [Dollar N. America] => Array ( [Name] => Dollar N. America [Buy] => 3.311 [Sell] => 3.314 ) [Yen Japan] => Array ( [Name]
Array
(
[Dollar N. America] => Array
(
[Name] => Dollar N. America
[Buy] => 3.311
[Sell] => 3.314
)
[Yen Japan] => Array
(
[Name] => Yen Japan
[Buy] => 0.028
[Sell] => 0.033
)
[Euro Europe] => Array
(
[Name] => Euro Europe
[Buy] => 3.752
[Sell] => 3.948
)
)
问题是我需要将数组键的名称更改为较短的名称:
[DollarUS] - [YenJP] - [EuroEU]
为了使它看起来像这样:
Array
(
[DollarUS] => Array
(
[Name] => Dollar N. America
[Buy] => 3.311
[Sell] => 3.314
)
[YenJP] => Array
(
[Name] => Yen Japan
[Buy] => 0.028
[Sell] => 0.033
)
[EuroEU] => Array
(
[Name] => Euro Europe
[Buy] => 3.752
[Sell] => 3.948
)
)
我尝试了几种方法,但没有找到结果:
foreach ($currency as $k => $v){
$currency[$k]['DolarUS'] = $currency[$k]['Dollar N. America'];
unset($monedas[$k]['Dollar N. America']);
}
您可以尝试数组_combine():
您可以尝试数组_combine(): 可能的重复可能的重复
$array = [
"Dollar N. America" => [
"Name" => "Dollar N. America"
"Buy" => 3.311
"Sell" => 3.314
],
"Yen Japan" => [
"Name" => "Yen Japan"
"Buy" => 0.028
"Sell" => 0.033
],
"Euro Europe" => [
"Name" => "Euro Europe"
"Buy" => 3.752
"Sell" => 3.948
]
];
$replace_with_me = ["Dollar N. America"=>"DollarUS" , "Yen Japan"=>"YenJP" , "Euro Europe"=>"EuroEU"];
foreach($array as $key=>$value){
$array[$replace_with_me[$key]] = $array[$key];
unset($array[$key])
}
var_dump($array[$key]);
$keys = ['DollarUS','YenJP','EuroEU'];
$values = [
'Dollar N. America' => [
'Name' => 'Dollar N. America'
'Buy' => 3.311
'Sell' => 3.314
],
'Yen Japan' => [
'Name' => 'Yen Japan'
'Buy' => 0.028
'Sell' => 0.033
],
'Euro Europe' => [
'Name' => 'Euro Europe'
'Buy' => 3.752
'Sell' => 3.948
]
];
$fixedKeys = array_combine($keys,$values);