So analysieren Sie eine CSV-Datei mit PHP

So Analysieren Sie Eine Csv Datei Mit Php



CSV Dateien enthalten durch Kommas getrennte Werte und sind das beliebte, etablierte Datenverarbeitungsformat, das zum Speichern der Daten in Tabellenform verwendet wird. Diese Dateien können einfach mit MS Excel, OpenOffice und Google Sheets erstellt werden. Parsen der CSV file liest die Datei Zeile für Zeile und trennt die Zeilen in Array-Werte.

In dieser Anleitung erklären wir, wie Sie a analysieren können CSV Datei mit PHP.







Analysieren Sie eine CSV-Datei mit PHP

Die integrierte Methode von PHP, die die CSV-Datei analysiert, ist fgetcsv() und es liest eine Zeile aus der CSV-Datei und analysiert sie in ein Array.



Die Syntax der Verwendung von fgetcsv() Funktion in PHP ist wie folgt:



fgetcsv (.csv“ , Länge , ',' )

Diese Funktion akzeptiert drei Parameter, der Name der Datei, die optionale Parameterlänge der längsten Zeile und dann ein weiterer optionaler Parameterfeldbegrenzer. Das Standardfeldtrennzeichen ist das Komma mit den doppelten Anführungszeichen als Einschluss.





Verwenden Sie die Funktion fgetcsv(), um eine CSV-Datei in PHP zu analysieren

Hier erfahren Sie, wie Sie das verwenden können fgetcsv() Funktion zum Parsen einer CSV-Datei in PHP:

Schritt 1 : Öffnen Sie zunächst eine CSV-Datei mit fopen() Funktion. Hier r-Modus wird verwendet, um die Datei zum Lesen zu öffnen und $handle ist das Handle zum Speichern der Daten aus der Datei:



$handle = fopen ( „Dateiname.csv“ , 'R' ) ;

Schritt 2 : Danach können Sie jeweils eine While-Schleife verwenden, um sie zu analysieren CSV Zeile separat, die Schleife wird bis zum Ende der Datei fortgesetzt:

während ( ( $Daten = fgetcsv ( $handle , 1000 , ',' ) ) !== FALSCH )

{

// Daten der CSV-Datei lesen

}

Schritt 3 : Sobald die Datei gelesen wurde, müssen Sie sie mit der Funktion fclose() schließen, indem Sie handle als einziges Argument übergeben.

fclose ( $handle ) ;

Hier ist ein vollständiger Code in PHP, der die oben genannten Schritte ausführt und es Ihnen ermöglicht, die CSV-Datei im schreibgeschützten Modus zu öffnen, wenn die Datei gefunden wird, andernfalls wird sie zurückgegeben FALSCH :



$handle = fopen ( „Daten.csv“ , 'R' ) ;

während ( ( $row = fgetcsv ( $handle ) ) !== FALSCH ) {

var_dump ( $row ) ;

}

fclose ( $handle ) ;

?>

Der obige Code öffnet zunächst die Datei „data.csv“ im Lesemodus mit der Funktion fopen() und weist das Dateihandle der Variablen $handle zu. Danach liest es jede Zeile der Datei mithilfe einer While-Schleife und der Funktion fgetcsv(). Der Code verwendet den !== false-Vergleich, um sicherzustellen, dass gelesen wird, bis das Ende der Datei erreicht ist.

Ausgang

Konvertieren Sie eine CSV-Datei in ein mehrdimensionales Array in PHP

Sie können auch a analysieren CSV Datei durch Konvertieren in ein mehrdimensionales Array, sodass die Daten in der Datei problemlos gelesen werden können. Der folgende Code hilft Ihnen, die Daten auf organisiertere Weise aus der CSV-Datei zu extrahieren.



$Dateiname = 'data.csv' ;

$nested_array = [ ] ;

Wenn ( ( $handle = fopen ( ' {$Dateiname} ' , 'R' ) ) !== FALSCH )

{

während ( ( $Daten = fgetcsv ( $handle , 1000 , ',' ) ) !== FALSCH )
{
$nested_array [ ] = $Daten ;
}
fclose ( $handle ) ;


}

Echo
  ; 

var_dump ( $nested_array ) ;

Echo
;

Um Daten in ein lesbares Format zu bringen, verwendet der obige Code die aufgerufene Funktion var_dump() der die Daten innerhalb eines HTML-Pre-Tags strukturiert formatiert und ausgibt.

Ausgang

Hier ist eine andere Möglichkeit, das zu öffnen CSV Datei in PHP auf individuellere Weise zu erstellen. Der unten angegebene Code zeigt die Daten jeder Zeile an. Zuerst haben wir die Datei mit geöffnet fopen()-Funktion . Verwenden Sie dann das Handle, um jede Zeile der Datei darin zu platzieren, und verwenden Sie die while-Schleife, um die gesamte Datei zu lesen CSV Datei, bis der Zeiger das Ende der Datei erreicht. Am Ende schließen wir die Datei:



$row = 1 ;

Wenn ( ( $handle = fopen ( „Daten.csv“ , 'R' ) ) !== FALSCH ) {

während ( ( $Daten = fgetcsv ( $handle , 1000 , ',' ) ) !== FALSCH ) {

$Zahlen = zählen ( $Daten ) ;

Echo '

$Zahlen Felder in Reihe $row :

\N '
;

$row ++;

für ( $c = 0 ; $c < $Zahlen ; $c ++ ) {

Echo $Daten [ $c ] . '
\N '
;

}

}

fclose ( $handle ) ;

}

?>

Ausgang

Endeffekt

In PHP , können wir die Datei mit öffnen fopen() Funktion, lesen Sie die Datei Zeile für Zeile mit der fgetcsv() Funktion und schließen Sie die Datei mit der fclose() Funktion. Dieser Vorgang kann für jede Zeile im wiederholt werden CSV Datei, die es Ihnen ermöglicht, Tabellendaten in PHP einfach zu lesen und zu bearbeiten.