Ответ 1
php имеют array_flip, но в вашем случае
вам не нужно это одно и то же
array(
'a',
'b',
'c'
);
этот массив имеет такие ключи, как 0,1,2
У меня есть массив вроде:
array(
0 => 'a',
1 => 'b',
2 => 'c'
);
Мне нужно преобразовать его в:
array(
'a',
'b',
'c'
);
Каков самый быстрый способ обмена ключами со значениями?
php имеют array_flip, но в вашем случае
вам не нужно это одно и то же
array(
'a',
'b',
'c'
);
этот массив имеет такие ключи, как 0,1,2
Используйте array_flip()
. Это будет сделано для замены ключей со значениями. Тем не менее, ваш массив в порядке, как есть. То есть вам не нужно их менять, потому что тогда ваш массив станет следующим:
array(
'a' => 0,
'b' => 1,
'c' => 2
);
не
array(
'a',
'b',
'c'
);
array(
0 => 'a',
1 => 'b',
2 => 'c'
);
и
array(
'a',
'b',
'c'
);
- один и тот же массив, вторая форма имеет 0,1,2 как неявные ключи. Если ваш массив не имеет числовых клавиш, вы можете использовать array_values функцию, чтобы получить массив, который имеет только значения (с числовыми неявными ключами).
В противном случае, если вам нужно поменять клавиши со значениями array_flip, это решение, но из вашего примера неясно, что вы пытаетесь сделать.
Смотрите: array_flip
$flipped_arr = array_flip($arr);
сделает это за вас.
(источник: http://php.net/manual/en/function.array-flip.php)
Вы хотите использовать array_flip()
для этого.