一个二维数组修改键名的方法,记录一下。
看一下示例数组:
$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 "
";print_r($a2);echo "";
输出结果:
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 "
";print_r($a2);echo "";
输出结果:
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
)
)