<?php $rows = [ ['id' => 1, 'name' => 'foo', 'year' => 2017, 'month' => 1, 'value' => 'bar1'], ['id' => 2, 'name' => 'foo', 'year' => 2017, 'month' => 2, 'value' => 'bar2'], ['id' => 3, 'name' => 'foo', 'year' => 2017, 'month' => 3, 'value' => 'bar3'], ['id' => 4, 'name' => 'foo', 'year' => 2017, 'month' => 4, 'value' => 'bar4'], ]; $data = []; foreach($rows as $row) { $key = $row['name'] . '_' . $row['year']; if(!isset($data[$key])){ $data[$key] = array( 'id' => $row['id'], 'name' => $row['name'], 'year' => $row['year'], ); } $month = 'month' . $row['month']; $data[$key][$month] = $row['value']; } print_r($data);
You have javascript disabled. You will not be able to edit any code.