In PHP können wir die Funktion fgetcsv() zum Parsen von CSV-Dateien verwenden, wodurch die CSV-Felder in einer bestimmten Ressource automatisch analysiert werden können. Der folgende Artikel gibt Ihnen eine detaillierte Einführung in die Verwendung von PHP zur Verarbeitung von CSV-Dateien. Ich hoffe, er ist hilfreich für Sie. [Video-Tutorial-Empfehlung: PHP-Tutorial]
Was ist eine CSV-Datei?
Eine CSV-Datei ist im Grunde nur eine Textdatei, die einem bestimmten Format entspricht, einem einfachen Textdateiformat, das zum Speichern von Daten verwendet wird und normalerweise in Tabellenkalkulations- oder Datenbanksoftware verwendet wird. In einer CSV-Datei werden alle Werte durch Kommas getrennt (daher die Bedeutung hinter dem Akronym: durch Kommas getrennte Werte), während Zeilen durch Zeilenumbrüche getrennt werden.
Zusammenfassung: CSV-Dateien bestehen aus Kommas, Daten und Zeilenumbrüchen; Zeilenumbrüche trennen Zeilen und Kommas trennen Werte/Spalten.
Ein Beispiel für eine CSV-Datei, nennen Sie sie example.csv:
Ted,USA,21 Lisa,UK,23 Michael,USA,20 Louise,Ireland,30
Wie Sie sehen können: Jede Zeile ist durch Kommas getrennt; die erste Spalte ist die der Person Name, die zweite Spalte ist das Land der Person und die letzte Spalte ist das Alter der Person; jede Person wird durch eine neue Zeile getrennt.
Wie verarbeite ich CSV-Dateien mit PHP?
php kann die Funktion fgetcsv() zum Parsen von CSV-Dateien verwenden. Diese Funktion analysiert eine Zeile aus der geöffneten Datei und überprüft das CSV-Feld.
Die Syntax lautet wie folgt:
fgetcsv("filename.csv", 1000, ",");
Dateiname.csv: Der Name der CSV-Datei.
1000: Gibt die Länge der längsten Zeile an.
",": Gibt den optionalen Trennzeichenparameter an. Der Standardwert ist natürlich Komma (,).
Um die Funktion fgetcsv() zu verwenden, müssen wir zuerst die Funktion fopen() verwenden, um die Datei zum Lesen zu öffnen, und dann die Funktion fclose() verwenden, um die Datei zu schließen, um den Code zu beenden. Dazwischen verwenden wir eine Schleife, um jede CSV-Zeile separat zu analysieren.
Im Folgenden finden Sie eine kurze Einführung zum Umgang damit:
1. Öffnen Sie die Datei mit der Funktion fopen() und lesen Sie sie:
$h = fopen("filename.csv", "r");
Verwenden Sie den „r“-Modus, um die Datei zu öffnen und zu lesen; die Variable $h speichert die Verarbeitung der Daten aus der Datei.
2. Verwenden Sie die Funktion fgetcsv(), um die Daten der CSV-Datei Zeile für Zeile zu lesen und jede Datenzeile separat in einem Array mit dem Namen $data zu speichern.
$data = fgetcsv($h, 1000, ",");
Um alle Zeilen zu lesen, müssen wir eine while-Schleife verwenden:
while (($data = fgetcsv($h, 1000, ",")) !== FALSE) { // 读取数据 }
3. Die Datei muss geschlossen werden
fclose($h);
Kombinieren Sie die oben genannten 3 Schritte:
<?php // 打开文件并阅读 if (($h = fopen("example.csv", "r")) !== FALSE) { // 将每行数据都转换为本地$data变量并储存 while (($data = fgetcsv($h, 1000, ",")) !== FALSE) { //输出每行数据 var_dump($data); } // 关闭文件 fclose($h); } ?>
Ausgabe:
Codebeispiel: CSV-Datei in mehrdimensionales PHP-Array konvertieren
Der folgende Code wird generiert ein mehrdimensionales Array ( $the_big_array), jedes seiner Elemente besteht aus einem Array, das aus einer einzelnen Zeile in der CSV-Datei konvertiert wurde.
<?php $filename = 'example.csv'; // 用于保存所有数据的多维(嵌套)数组 $the_big_array = []; // 打开文件并阅读 if (($h = fopen("{$filename}", "r")) !== FALSE) { // 文件中的每一行数据都被转换为我们调用的单个数组$data // 数组的每个元素以逗号分隔 while (($data = fgetcsv($h, 1000, ",")) !== FALSE) { // 每个单独的数组都被存入到嵌套的数组中 $the_big_array[] = $data; } // 关闭文件 fclose($h); } // 以可读格式显示代码 echo "<pre class="brush:php;toolbar:false">"; var_dump($the_big_array); echo "
Ausgabe:
Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Lernen aller hilfreich sein wird. Weitere spannende Inhalte finden Sie in den entsprechenden Tutorial-Kolumnen auf der chinesischen PHP-Website! ! !
Das obige ist der detaillierte Inhalt vonWie verarbeite ich CSV-Dateien mit PHP (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!