PHP / fgetcsv()
fgetcsv() - Lesen einer Datei:
Mit fgetcsv() möchten wir eine CSV-Datei einfach auslesen.
Sehen wir uns einmal den Code genauer an:
CSV-Datei:
Code PHP:
Ach ja, mein Code den ich zum Download anbiete ist ein
bisschen komplexer bzw. so programmiert, wie ich es eben mache.
Wenn Ihr Anregungen oder Kommentare zu den Thema habt, seid so nett und kontaktiert mich unter: Kontakt
Kopiert Euch gerne den Code und probiert es aus: Code
Mit fgetcsv() möchten wir eine CSV-Datei einfach auslesen.
Sehen wir uns einmal den Code genauer an:
CSV-Datei:
Name;Vorname;eMail
Witzbold;Klara;klara.witzbold@spassmail.de
Lachmann;Otto;otto.lachmann@haha.net
Schmunzel;Lena;lena.schmunzel@grinse.org
Spassvogel;Rudi;rudi.spassvogel@witzig.com
Kicher;Tom;tom.kicher@lolmail.de
Code PHP:
<?php // CSV-Datei $datei = 'daten.csv'; // Wenn Datei vorhanden if ( ( $handle = fopen( $datei, 'r' ) ) !== FALSE ) { // Zum Zählen der Zeilen $count = 0; // Array für die Überschriften $head = []; // fgetcsv liest die Zeile und konvertiert sie in ein Array while ( ( $daten = fgetcsv( $handle, 1000, ';')) !== FALSE) { // Überschriften dem Arry $head zuweisen if($count === 0){ $head = $daten; }else{ // Beispiel: Daten ausgeben echo '<span class="head">' . $head[ 0 ] . ':</span> ' . $daten[ 0 ] . '<br>'; echo '<span class="head">' . $head[ 1 ] . ':</span> ' . $daten[ 1 ] . '<br>'; echo '<span class="head">' . $head[ 2 ] . ':</span> ' . $daten[ 2 ] . '<hr>'; } $count++; } fclose( $handle ); } ?>
Wenn Ihr Anregungen oder Kommentare zu den Thema habt, seid so nett und kontaktiert mich unter: Kontakt
Kopiert Euch gerne den Code und probiert es aus: Code
Beispiel
Code
HTML: <form method="get" action="fgetcsv.php"> <button type="submit" name="send">CSV Auslesen</button> </form>
CSS: button[type="submit"] { color: var(--black); } .head{ display:inline-block; width:90px; color:rgba(112, 175, 4, 1); font-weight: 600; }
PHP: <?php // Wenn das Formular aufgerufen wurde if( isset( $_GET['send'] ) ){ // CSV-Datei $datei = 'daten.csv'; // Wenn Datei vorhanden if ( ( $handle = fopen( $datei, 'r' ) ) !== FALSE) { // Zum Zählen der Zeilen $count = 0; // Array für die Überschriften $head = []; // fgetcsv liest die Zeile und konvertiert sie in ein Array while ( ( $daten = fgetcsv( $handle, 1000, ';')) !== FALSE) { // Überschriften dem Arry $head zuweisen if($count === 0){ $head = $daten; // Anzahl der Spalten ermitteln $headlength = count( $daten ); }else{ for( $i = 0; $i < $headlength; $i++){ // Endstück für die Ausgabe $end = '<br>'; if($i == $headlength-1){ $end = '<hr>'; } // Beispiel: Daten ausgeben echo '<span class="head">'.$head[ $i ].':</span> '.$daten[ $i ].$end; } } $count++; } fclose( $handle ); } } ?>