根据参考重命名多维 php 数组中的键
Renaming keys in multidimentional php array as per reference
我正在尝试根据包含正确名称的第二个数组重命名多维数组中的键。
我的多维数组
$earth = Array (
World => Array(
Europe => Array(
Portugal => Array()
spain => Array()
France => Array()
)
asia => Array(
Japan => Array()
China => Array()
)
)
和正确的名称数组:
$rename = Array (
[asia] => Asia
[spain] => Spain
)
小菜一碟
数组:earth 和 rename
$earth = Array(
'World' => Array(
'Europe' => Array(
'Portugal' => Array(),
'spain' => Array(),
'France' => Array()
),
'asia' => Array(
'Japan' => Array(),
'China' => Array()
)
)
);
$rename = Array (
'asia' => 'Asia',
'spain' => 'Spain'
);
并用 em
调用这个函数
function test_rename(&$earth,$rename){
foreach ($earth as $e => &$y) {
if(in_array($e, array_keys($rename))){
$earth[$rename[$e]] = $earth[$e];
unset($earth[$e]);
}
if(is_array($y)){
test_rename($y,$rename);
}
}
}
test_rename($earth,$rename);
此函数是递归的,将需要重命名的键的值用新键推送到原始数组,并取消设置以前的键:
描述性
- foreach $earth array 元素检查元素键是否在 $rename array
的键中
- if is ,我们添加到这个 $earth array 这个我们还在的元素,但是我们把它分配给 key,met在匹配的值 $rename arrays key!
- 然后取消设置我们遇到的 $earth 数组 元素。
- 完成!如果此元素的类型(是否遇到我们)是数组,则函数调用自身。
我正在尝试根据包含正确名称的第二个数组重命名多维数组中的键。
我的多维数组
$earth = Array (
World => Array(
Europe => Array(
Portugal => Array()
spain => Array()
France => Array()
)
asia => Array(
Japan => Array()
China => Array()
)
)
和正确的名称数组:
$rename = Array (
[asia] => Asia
[spain] => Spain
)
小菜一碟
数组:earth 和 rename
$earth = Array(
'World' => Array(
'Europe' => Array(
'Portugal' => Array(),
'spain' => Array(),
'France' => Array()
),
'asia' => Array(
'Japan' => Array(),
'China' => Array()
)
)
);
$rename = Array (
'asia' => 'Asia',
'spain' => 'Spain'
);
并用 em
调用这个函数function test_rename(&$earth,$rename){
foreach ($earth as $e => &$y) {
if(in_array($e, array_keys($rename))){
$earth[$rename[$e]] = $earth[$e];
unset($earth[$e]);
}
if(is_array($y)){
test_rename($y,$rename);
}
}
}
test_rename($earth,$rename);
此函数是递归的,将需要重命名的键的值用新键推送到原始数组,并取消设置以前的键:
描述性
- foreach $earth array 元素检查元素键是否在 $rename array 的键中
- if is ,我们添加到这个 $earth array 这个我们还在的元素,但是我们把它分配给 key,met在匹配的值 $rename arrays key!
- 然后取消设置我们遇到的 $earth 数组 元素。
- 完成!如果此元素的类型(是否遇到我们)是数组,则函数调用自身。