В принципе, у меня есть массив, в котором каждый элемент представляет собой пару ключевых / значений элементов, например:
[myArray] => Array [0] => Array [id] => 121 [name] => Value1 [1] => Array [id] => 125 [name] => Value2 [2] => Array [id] => 129 [name] => Value3 ....
И я хочу преобразовать это в:
[myArray] => Array [121] => Value1 [125] => Value2 [129] => Value3 ....
поэтому элемент «id» становится ключом, а элемент «name» становится значением. Есть ли у PHP что-то встроенное (или есть хитроумный трюк), чтобы сделать это? Я бы хотел избежать очевидного цикла foreach (), если есть что-то более чистое …
PHP 5.5 имеет функцию array_column()
которая может сделать это для вас, если вам посчастливилось запустить это уже. Разработчик, который представил его, также имеет версию, совместимую с версиями, которую вы можете скачать для более ранних версий PHP.
Тем не менее, это довольно легко свернуть самостоятельно или просто использовать цикл foreach
для конкретного случая, в котором вы нуждаетесь.
Если у вас есть доступ к array_column
вы можете:
array_column($myArray, 'name', 'id')
Я думаю, что foreach
– намного лучший вариант.