我有这个 php 数组;
array(
(int) 0 => array(
'KeyName' => array(
'id' => '1',
'number' => '11A',
)
),
(int) 1 => array(
'KeyName' => array(
'id' => '2',
'number' => '22A',
)
),
(int) 2 => array(
'KeyName' => array(
'id' => '16',
'number' => '001A',
)
)
)
我想将 'KeyName'
更改为 'NewKeyName'
,以便新数组变为;
array(
(int) 0 => array(
'NewKeyName' => array(
'id' => '1',
'number' => '11A',
)
),
(int) 1 => array(
'NewKeyName' => array(
'id' => '2',
'number' => '22A',
)
),
(int) 2 => array(
'NewKeyName' => array(
'id' => '16',
'number' => '001A',
)
)
)
什么是快速执行此操作的方法?
下面是我尝试过的代码;
foreach ($array as $key)
{
$array[$key]['KeyName']=$array[$key]['NewKeyName'];
}
但是我遇到了一些非法偏移错误。有没有更好的方法来解决这个问题?
最佳答案
在您的代码中,您将获取值而不是 $key
中的键。您必须尝试使用 $array as $key => $val
而不是 $array as $key
。此外,一旦进入循环,只需将值复制到新索引并取消设置现有索引。
喜欢
foreach ($array as $key => $val)
{
$array[$key]['NewKeyName'] = $array[$key]['KeyName'];
unset($array[$key]['KeyName']);
}
关于php - 重命名该关联数组数组的键的快速方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26200059/