当我对一个名为$ tags(多维数组)的变量进行var_dump时,我得到了这个:
Array
(
[0] => Array
(
[name] => tabbing
[url] => tabbing
)
[1] => Array
(
[name] => tabby ridiman
[url] => tabby-ridiman
)
[2] => Array
(
[name] => tables
[url] => tables
)
[3] => Array
(
[name] => tabloids
[url] => tabloids
)
[4] => Array
(
[name] => taco bell
[url] => taco-bell
)
[5] => Array
(
[name] => tacos
[url] => tacos
)
)
我想将名为"url"的所有数组键重命名为"value".这样做有什么好办法?
ale*_*lex 131
你可以array_map()用来做.
$tags = array_map(function($tag) {
return array(
'name' => $tag['name'],
'value' => $tag['url']
);
}, $tags);
Run Code Online (Sandbox Code Playgroud)
Roc*_*mat 30
循环,设置新密钥,取消设置旧密钥.
foreach($tags as &$val){
$val['value'] = $val['url'];
unset($val['url']);
}
Run Code Online (Sandbox Code Playgroud)
foreach ($basearr as &$row)
{
$row['value'] = $row['url'];
unset( $row['url'] );
}
unset($row);
Run Code Online (Sandbox Code Playgroud)
谈到功能PHP,我有一个更通用的答案:
array_map(function($arr){
$ret = $arr;
$ret['value'] = $ret['url'];
unset($ret['url']);
return $ret;
}, $tag);
}
Run Code Online (Sandbox Code Playgroud)
小智 5
递归php重命名键功能:
function replaceKeys($oldKey, $newKey, array $input){
$return = array();
foreach ($input as $key => $value) {
if ($key===$oldKey)
$key = $newKey;
if (is_array($value))
$value = replaceKeys( $oldKey, $newKey, $value);
$return[$key] = $value;
}
return $return;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
117156 次 |
| 最近记录: |