Du willst also jede Zeile der CSV Datei in eine Spalte der Tabelle schreiben und, sofern das Datum übereinstimmt, die nächste CSV Zeile in die Spalte dahinter, ansonsten in eine neue Zeile schreiben!? Hab ich das richtig verstanden?
Wenn dem so ist, würde ich die CSV Datei einmal durcharbeiten und mitzählen, wieviele Spalten die längste HTML Zeile hat. Du könntest jede CSV Zeile in ein mehrdimensionales Array mit folgendem Format werfen:
PHP-Code:
<?php
$csv = array(
'01.02.2003' => array(
0 => 'CSV Zeile 1 vom 01.02.2003',
1 => 'CSV Zeile 2 vom 01.02.2003'
),
'02.03.2004' => array(
0 => 'CSV Zeile 1 vom 02.03.2004',
1 => 'CSV Zeile 2 vom 02.03.2004',
2 => 'CSV Zeile 3 vom 02.03.2004',
3 => 'CSV Zeile 4 vom 02.03.2004'
)
);
?>
Dann fängst Du an, die Tabelle in HTML auszugeben. Jede HTML Zeile, die weniger Spalten als die längste hat, bekommt dann ein COLSPAN="x" in den <td> Tag.
Ob das die effizienteste Lösung ist, weiß ich nicht... bin noch nicht richtig wach

Vielleicht gibts Dir aber nen kleinen Denkanstoß.