$waysArray = array();
foreach ($array as $row) {
if (array_key_exists ($row[0], $waysArray)) {
$waysArray[$row[0]]++;
} else $waysArray[$row[0]] = 1;
}
$table = '';
$way = '';
foreach ($array as $row) {
if ($way != $row[0]) {
$way = $row[0];
$i = 0;
$tr = '';
foreach ($row as $col) {
$tr .= (0 == $i) ? '<td rowspan="'.$waysArray[$col].'">'.$col.'</td>': '<td>'.$col.'</td>';
$i++;
}
$table .= '<tr>'.$tr.'</tr>';
} else {
array_shift ($row);
$tr = '';
foreach ($row as $col) $tr .= '<td>'.$col.'</td>';
$table .= '<tr>'.$tr.'</tr>';
}
}
echo '<table border="1">'.$table.'</table>';