Изменение вложенного (многомерного) массива в пары ключ => значение в PHP

У меня есть многомерный массив, который выглядит так:

Array
(
    [0] => Array
        (
            [ClientID] => ec2173de2134fdsfg4fsdffcb4b5205
            [Name] => ABC Widgets
        )

    [1] => Array
        (
            [ClientID] => e5dfgfdg2d760f640aadfgdfgdfg47b
            [Name] => Acme Co
        )

    [2] => Array
        (
            [ClientID] => b9dfgsdfg419085c3sdgffdsgfdg313
            [Name] => 4321 Corp
        )

)

Я хотел бы изменить на следующее:

Array
(
  ec2173de2134fdsfg4fsdffcb4b5205 => ABC Widgets
  e5dfgfdg2d760f640aadfgdfgdfg47b => Acme Co
  b9dfgsdfg419085c3sdgffdsgfdg313 => 4321 Corp
)

Каков наилучший способ сделать это? Кроме того, мне лучше хранить массив в его исходном формате и конвертировать в другие форматы по мере необходимости? Спасибо за любую помощь

Ответы на вопрос(2)

$flat = array();
foreach($multidim as $item)
    $flat[$item['ClientID']] = $item['Name'];

на нее нельзя ответить вообще. Вы должны хранить его, если вам это нужно.

вы создаете хеш-таблицу с исходными данными. Хеш-таблицы очень быстры для доступа и вставки отдельных элементов данных. Однако вы не можете выполнять запросы к данным, содержащимся в записях - вы можете получать только на основе уникального ключа или вставлять на основе сгенерированного ключа.

Вы можете использовать исходный формат со всеми его полями в качестве «бэкенда» и создать хеш-таблицу, подобную той, которую вы продемонстрировали. Недостатком является то, что каждый раз, когда генерируется эта таблица, она стоит циклов ЦП.

Если вы выбросите эти данные в базу данных, механизм БД будет обрабатывать создание обычных таблиц данных (например, вашей первой) и хеш-таблиц (например, вашей второй), необходимых для конкретного используемого вами запроса. Вы также можете заставить его создавать хеш-таблицы на основе определенного столбца базы данных.

ВАШ ОТВЕТ НА ВОПРОС