更改数组元素键值的简单方法

时间:2009-11-03 13:34:21

标签: php arrays key

  

可能重复:
  In PHP, how do you change the key of an array element?

我正在阅读一堆多维数组,在挖掘它们时,我注意到有些键不正确。

对于每个不正确的密钥,我只想将其更改为零:

从:

$array['bad_value']

为:

$array[0]

我想保留数组元素的值,我只想更改单个键的内容。建议表示赞赏。

干杯

4 个答案:

答案 0 :(得分:7)

如果您将多个键更改为0,则会覆盖值...

你可以这样做

$badKey = 'bad_value';
$array[0] = $array[$badKey];
unset($array[$badKey]);

答案 1 :(得分:3)

Bruteforce方法:

$array[0] = $array['bad_value'];
unset($array['bad_value']);

答案 2 :(得分:0)

$array['0'][] = $array['bad_value'];
unset( $array['bad_value'] );

然后它将是$ array ['0']中的数组,其中包含已损坏元素的值。

答案 3 :(得分:-2)

很好地看到你说的密钥可以更改为任何数值这个怎么样?

$bad_keys = array('bad_key_1', 'bad_key_2' ...);
$i = 0;
foreach($bad_keys as $bad_key) {
    $array[$i] = $array[$bad_key];
    unset($array[$bad_key]);
    $i++;
}

编辑:我提供的解决方案非常糟糕,并没有真正解决问题,因为有多个坏键,这应该会更好。