CSV-Datei in PHP lesen oder parsen

Muhammad Abubakar 8 Juli 2021
  1. Verwenden Sie fread(), um die CSV-Datei in PHP zu lesen
  2. Verwenden Sie readfile(), um die CSV-Datei in PHP zu lesen
  3. Verwenden Sie die Funktion str_getcsv(), um CSV in Python zu analysieren
  4. Verwenden Sie die Funktion fgetcsv(), um CSV in Python zu analysieren
CSV-Datei in PHP lesen oder parsen

Das Dateihandling ist ein wesentlicher Bestandteil jeder Webanwendung. In diesem Tutorial wird das Lesen, Schreiben und Anhängen von Dateien mithilfe der Dateibehandlung eingeführt.

Verwenden Sie fread(), um die CSV-Datei in PHP zu lesen

Dies ist die grundlegende Funktion zum Lesen der CSV-Datei in PHP. Es liest die Datei und gibt alle in der Datei vorhandenen Inhalte zurück.

Siehe Beispielcode.

<?php
$file = "text1.csv";
$openfile = fopen($file, "r");
$cont = fread($openfile, filesize($file));
echo $cont;
?>  

Ausgabe:

aaa,bbb,ccc,dddd
123,456,789
"""aaa""","""bbb"""

fread() benötigt zwei Parameter: die Datei, aus der wir Daten lesen möchten und die Größe der Datei, die wir erhalten können, indem wir die Datei als Parameter an die Funktion filesize($file) übergeben.

Verwenden Sie readfile(), um die CSV-Datei in PHP zu lesen

Diese Funktion liest eine Datei und speichert die Ergebnisse im Speicher oder Cache. Es öffnet die Datei und liest den Inhalt der Datei. Es akzeptiert nur einen Parameter, nämlich die Datei.

<?php
echo readfile("text1.csv");
?>

Ausgabe:

aaa,bbb,ccc,dddd
123,456,789
"""aaa""","""bbb"""
49

Die Funktion fread() liest nur die Datei und gibt die Daten im Editor zurück, aber die Funktion readfile() liest eine Datei, speichert aber auch deren Ergebnis im Speicher oder Cache.

Verwenden Sie die Funktion str_getcsv(), um CSV in Python zu analysieren

Diese Funktion parst einen String im CSV-Format und gibt ein Array zurück, das die Daten der Datei enthält. Es wandelt die Daten aus einer CSV-Datei in ein Array um, aber bevor Sie es ausführen, sollten Sie die Datei mit der Funktion fopen() öffnen, die Datei und Modus als Parameter verwendet. Siehe das folgende Beispiel.

<?php
$handle = fopen("text1.csv", "r");
$lineNumber = 1;
while (($raw_string = fgets($handle)) !== false) {
    $row = str_getcsv($raw_string);
    var_dump($row);
    $lineNumber++;
}
fclose($handle);
?>

Ausgabe:

array(4) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
  [2]=>
  string(3) "ccc"
  [3]=>
  string(4) "dddd"
}
array(3) {
  [0]=>
  string(3) "123"
  [1]=>
  string(3) "456"
  [2]=>
  string(3) "789"
}
array(2) {
  [0]=>
  string(5) ""aaa""
  [1]=>
  string(5) ""bbb""
}

Verwenden Sie die Funktion fgetcsv(), um CSV in Python zu analysieren

Jetzt verwenden wir eine coole Funktion namens fgetcsv(), um die Daten aus einer CSV-Datei zu analysieren. Die folgenden Schritte sind erforderlich, um diese Funktion zu verwenden.

  1. Öffnen Sie die Datei, um auf Dateidaten aus einer Datei zuzugreifen
  2. Verwenden Sie die Funktion fgetcsv() innerhalb einer Schleife, um jede Zeile der Datei separat zu parsen.
  3. Schließen Sie die Datei

Siehe Beispielcode.

<?php

$file = fopen('text1.csv', 'r');
while (($line = fgetcsv($file)) !== FALSE) {
    echo '<pre>';
    print_r($line);
    echo '</pre>';
}
fclose($file);
?>

Ausgabe:

<pre>Array
(
    [0] => aaa
    [1] => bbb
    [2] => ccc
    [3] => dddd
)
</pre><pre>Array
(
    [0] => 123
    [1] => 456
    [2] => 789
)
</pre><pre>Array
(
    [0] => "aaa"
    [1] => "bbb"
)
</pre>

Verwandter Artikel - PHP File