PHP数组修改键名
看一下示例数组:
$a2 = Array( "20170511" => Array( "aaa" => "2323", "bbb" => "5010", "ccc" => "102530", "ddd" => "100104", ), "20170512" => Array( "aaa" => "2323", "bbb" => "5010", "ccc" => "102530", "ddd" => "100104", ), "benqi" => Array( "aaa" => "3432323", "bbb" => "5010", "ccc" => "102530", "ddd" => "100104", ), );
需求一:将键名 benqi 修改为当天的日期
使用的解决方案是将旧键名和值赋予给新键名,然后注销旧键名,代码如下:
$today = date("Ymd"); //20170513
$a2[$today] = $a2["benqi"];
unset( $a2["benqi"] );
// 输出示例
echo "<pre>";print_r($a2);echo "</pre>";
输出结果:
Array
(
[20170511] => Array
(
[aaa] => 2323
[bbb] => 5010
[ccc] => 102530
[ddd] => 100104
)
[20170512] => Array
(
[aaa] => 2323
[bbb] => 5010
[ccc] => 102530
[ddd] => 100104
)
[20170513] => Array
(
[aaa] => 3432323
[bbb] => 5010
[ccc] => 102530
[ddd] => 100104
)
)
需求二:将键名 ddd 修改为 city
看代码:
foreach($a2 as &$a){
$a['city'] = $a['ddd'];
unset($a['ddd']);
}
// 输出示例
echo "<pre>";print_r($a2);echo "</pre>";
输出结果:
Array
(
[20170511] => Array
(
[aaa] => 2323
[bbb] => 5010
[ccc] => 102530
[city] => 100104
)
[20170512] => Array
(
[aaa] => 2323
[bbb] => 5010
[ccc] => 102530
[city] => 100104
)
[20170522] => Array
(
[aaa] => 3432323
[bbb] => 5010
[ccc] => 102530
[city] => 100104
)
)