2012-06-30 3 views
0

Im некоторый массив, который возвращается по какой-то запрос .. и результат что-то вроде этого:Объединение нескольких массивов по индексу

array(array('balance_1'=> '-5', 'balance_2'=>'-21'), array('balance_1'=> '-21', 'balance_2'=>'21'), array('balance_1'=> '-50', 'balance_2'=>'40')) 

я хочу, чтобы превратить это в массив, который выглядит примерно так:

array(array(-5,11,-50), array(-21, 21, 40)); 

В основном я хочу соединить все balance_1, все balance_2, все balance_3 в разделенные массивы.

любые идеи? спасибо

ответ

1

Вы просто перейдете через список, а затем соберите значения. Это самое простое, если вы повторно использовать существующие ключи для группы:

foreach ($list as $row) { 
    foreach ($row as $key=>$value) { 
     $out[$key][] = $value; 
    } 
} 

Таким образом, вы получите $out массив, с [balance_1] или [balance_2] проведения списков значений.

+0

удивительное: D спасибо –

0

Петля, используя массив, и используйте «array_key_exists», если ключ существует, добавляет в массив, если он не создает новый массив с вашим индексом.

Более можно найти здесь: http://www.php.net/manual/en/function.array-key-exists.php

Смежные вопросы