Измените ключ в массиве PHP

#php #arrays #key #key-value

Вопрос:

Я хочу изменить ключ моего массива в php.

Вот пример :

 array (size=5)
  0 => 
    array (size=2)
      'iden' => string '01' (length=8)
      'don' => string '17' (length=2)
  1 => 
    array (size=2)
      'iden' => string '02' (length=8)
      'don' => string '17' (length=2)
  2 => 
    array (size=2)
      'iden' => string '03' (length=8)
      'don' => string '17' (length=2)
 

И я хочу изменить свой массив вот так :

 array (size=5)
  0 => 
    array (size=2)
      0 => string '01' (length=8)
      1 => string '17' (length=2)
  1 => 
    array (size=2)
      0 => string '02' (length=8)
      1 => string '17' (length=2)
  2 => 
    array (size=2)
      0 => string '03' (length=8)
      1 => string '17' (length=2)
 

Заранее спасибо

Ответ №1:

Вы можете использовать функцию array_values для удаления именованных ключей:

 foreach($array as amp;$item) {
    $item = array_values($item);
}
unset($item); // Remove reference
 

Обратите внимание на amp; в начале. Это создает ссылку в переменной $item на соответствующий элемент массива, что означает, что вы можете редактировать его в своем цикле.

Если вы хотите, вы также можете написать это в одной строке, используя array_map:

 $array = array_map("array_values", $array);