Объединить несколько массивов PHP - PullRequest
0 голосов
/ 24 января 2011

Мне действительно нужна помощь, чтобы понять это.

У меня есть несколько массивов, и я хотел бы объединить некоторые из них.Это выглядит следующим образом.

            while ($row = $db->fetch_array($result_set)) {
                $year           = $row['year(Tidspunkt)'];
                $month_num      = $row['month(Tidspunkt)'];
                $month      = $cal->name_of_month($row['month(Tidspunkt)']);
                $type           = $row['Klubtype'];
                $visits         = $row['count(Handling)'];
                $days_in_month = $cal->days_in_month($month_num,$year);
                $avg           = $visits / $days_in_month;
                $object_array[]= array('month' => $month , 'visits' => $visits, 'type' => $type, 'avg' => $avg);
            }
            return $month_array;

И вывод выглядит так

Array ( 
     [0] => Array ( [month] => Januar [visits] => 891 [type] => FK [avg] => 28.7419354839 ) 
     [1] => Array ( [month] => Januar [visits] => 23 [type] => UK [avg] => 0.741935483871 ) 
)

Теперь я хотел бы объединить эти два массива на основе значения месяца.Представь, когда у меня есть массивы на целый год.Тогда было бы неплохо иметь 12 массивов вместо 24.

Спасибо за помощь.

1 Ответ

1 голос
/ 24 января 2011

Я думаю, что это может быть то, что вы хотите ...

$newArray = array();

foreach($array as $value) {

   $month = $value['month'];
   unset($value['month']);
   $newArray[$month][] = $value;
}

Это даст вам что-то вроде ...

Array ( 
     ['Januar'] => Array (
        [0] => Array( [visits] => 891 [type] => FK [avg] => 28.7419354839 ) 
        [1] => Array ( [visits] => 23 [type] => UK [avg] => 0.741935483871 ) 
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...