<?
$init_array = array(
array('id'=>2312, 'name'=>'ABC', 'value1'=>'asda', 'value2'=>'sdf', 'value3'=>'dfg'),
array('id'=>2312, 'name'=>'ABC', 'value1'=>'asd', 'value2'=>'fgd', 'value3'=>'ret'),
array('id'=>2455, 'name'=>'XYZ', 'value1'=>'sdgg', 'value2'=>'rew', 'value3'=>'gdg'),
);
$formatted_array = array();
foreach( $init_array as $element ) {
$formatted_array[ $element['id'] ][] = $element;
}
?>
<table>
<? foreach($formatted_array as $row ): ?>
<tr>
<td rowspan="<?=count($row)?>"><?=$row[0]['id']?></td>
<td rowspan="<?=count($row)?>"><?=$row[0]['name']?></td>
<? foreach( $row as $value ): ?>
<td><?=$value['value1']?></td>
<td><?=$value['value2']?></td>
<td><?=$value['value3']?></td>
</tr><tr>
<? endforeach; ?>
</tr>
<? endforeach; ?>
</table>