このようにできます。この例では、配列をハードコーディングしました$rows
が、それをデータベースからの行の配列に置き換えることができます。
<?php
$rows = array(
array(
'name' => 'Juan',
'login' => '09:00:01',
'evaluation' => 'Yes'
),
array(
'name' => 'Juan',
'login' => '09:00:02',
'evaluation' => 'Yes'
),
array(
'name' => 'Juan',
'login' => '09:00:03',
'evaluation' => 'Yes'
),
array(
'name' => 'Jose',
'login' => '09:00:04',
'evaluation' => 'No'
),
array(
'name' => 'Jose',
'login' => '09:00:05',
'evaluation' => 'No'
)
);
?>
<table>
<tr>
<th>Name</th>
<th>Login</th>
<th>Evaluation</th>
</tr>
<?php
$prevName = '';
foreach($rows as $row):
if($prevName == $row['name']) {
$name = '';
} else {
$name = $prevName = $row['name'];
}
?>
<tr>
<td><?php echo htmlspecialchars($name); ?></td>
<td><?php echo htmlspecialchars($row['login']); ?></td>
<td><?php echo htmlspecialchars($row['evaluation']); ?></td>
</tr>
<?php endforeach; ?>
</table>
結果は次のとおりです。