PHP: Превращение многомерных массивов к единственным массивам размера

В основном мое приложение взаимодействует с веб-сервисом, который передает обратно странный многомерный массив, такой как:

Array
(
    [0] => Array
        (
            [Price] => 1
        )
    [1] => Array
        (
            [Size] => 7
        )
    [2] => Array
        (
            [Type] => 2
        )
)

Это не проблема, но проблема состоит в том, что сервис продолжает изменять индекс тех объектов, таким образом, в следующем массиве Цена могла быть в 1 вместо 0.

Как я эффективно преобразовываю массивы как это в единственный массив размера, таким образом, я могу получить доступ к переменным через $var ['Размер'] вместо $var [1] ['Размер']?

Цените свою справку

8
задан KeyStroke 9 March 2010 в 12:19
поделиться

2 ответа

Вот так:

$result = array();

foreach($array as $inner) {
    $result[key($inner)] = current($inner);        
}

Массив $result теперь будет выглядеть так:

Array
(
    [Price] => 1
    [Size] => 7
    [Type] => 2
)
9
ответ дан 5 December 2019 в 04:34
поделиться
$result = call_user_func_array('array_merge', $array);
30
ответ дан 5 December 2019 в 04:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: