結果はすでに日付順に並べられているため、前の日付を変数に保存して、変更されるたびに新しいテーブルを作成できます。
$olddate = '';
while($row = mysql_fetch_array($result))
{
$fdate = date('M jS, Y l', strtotime($row['date']));
if ( $olddate != $fdate ) { // date has changed:
// end the previous table (if it exists)
if ( $olddate != '' ) {
echo "</table>"
}
// start the new table. Do something with $fdate here if you like
echo "
<h3>$fdate</h3>
<table border='1'>
<tr class='top'>
...
</tr>";
}
// print a row as before.
echo "<tr>";
....
}
// end the last table
echo "</table>";
基本的に変更されたのは、$fdate
だけです。 $olddate
にも保存されます 。新しい行を処理するとき、日付が変わった場合(つまり、$olddate != $fdate
)、新しいテーブルを作成します。
mysql結果の各行について、以前と同じようにテーブル行を生成します(Date列をもう含まないなどの変更を加えることができます)。