PHP 4.3

10.10 csv-Daten schreiben

Im Grunde ähnelt das Schreiben und Lesen von csv-Daten sehr den in Lerneinheit 9 vorgestellten Cookie-Prozeduren. Dort hatten wir mit einer for-Schleife ein mehrdimensionales Array durchlaufen und die Werte zusammen mit einem Trennzeichen zu einer langen Zeichenkette zusammengesetzt. Da wir es bei csv-Daten jedoch mit mehrdimensionalen Arrays zu tun haben, fällt die Routine zum Zusammensetzen einer Zeile ein wenig umfangreicher aus.

csv-Daten schreiben

          
$produkte[0][0]= "Äpfel";
$produkte[0][1]= 3.99;
$produkte[1][0]= "Birnen";
$produkte[1][1]= 4.99;
$produkte[2][0]= "Bananen";
$produkte[2][1]= 6.99;
$produkte[3][0]= "Kiwis";
$produkte[3][1]= 0.69;
$produkte[4][0]= "Kirschen";
$produkte[4][1]= 6.99;
$produkte[5][0]= "Melonen";
$produkte[5][1]= 8.99;
$produkte[6][0]= "Limetten";
$produkte[6][1]= 6.99;

  function csv_write($csv_array, $fp) {
    for($i= 0; $i<   count($csv_array); $i++) {
      $zeile=   implode(",", $csv_array[$i]) . "\n";
      fputs($fp, $zeile);
    }
   }

  csv_write($produkte, $fp);

Das vorliegende Skriptfragment arbeitet auf Basis einer for-Schleife, die die Elemente eines mehrdimensionalen Arrays durchläuft. Die in den Elementen befindlichen Arrays der zweiten Dimension werden mittels implode() zu einer kommaseparierten Zeichenkette zusammengesetzt. Außerdem ergänzen wir die Variable $zeile um die Zeichenkette \n für das Zeilenende. Anschließend wird die Zeile mit fputs() in die Datei geschrieben.

Ergänzen Sie zur Übung das Skript um die restlichen Anweisungen (Datei öffnen, Datei schließen, etc.) Achten Sie beim Aufruf der Funktion auf die korrekte Übergabe der erforderlichen Parameter.

Kommentare (0)

Ihr Kommentar

Name