Heim >Backend-Entwicklung >PHP-Tutorial >PHP liest CSV-Daten Zeile für Zeile in die Datenbank ein

PHP liest CSV-Daten Zeile für Zeile in die Datenbank ein

不言
不言Original
2018-04-16 16:06:391581Durchsuche


Anforderung: Importieren Sie die aus der Excel-Datei exportierten CSV-Daten in die Datenbank

Die Lösung lautet wie folgt:

 // 判断文件是否上传成功
        if (empty($_FILES['file1']) && $_FILES['file1']['error'] != 0) {
            return 'Error file1';
        } else {
            $filename = $_FILES['file1']['tmp_name'];
        }

        // 组装数据
        $fields = ['name', 'age', 'telephone'];
        $fields_cnt = count($fields);
        
        // 用二进制打开文件,避免编码问题
        $fp_in = @fopen($filename, "rb");
        while (!feof($fp_in)) {
            $line = fgets($fp_in);
            if ($line) {
                $arr = explode(',', $line);
                // 待插入数据格式化
                $fmt = array_map(function ($v) {return ($v == 0) ? $v : ((int) $v);}, $arr);
                $data[] = array_combine($fields, array_splice($fmt, 1, $fields_cnt));
            }
        }
        fclose($fp_in);

        // TP数据批量入库
        $q = M("excel_1")->addAll($data);

Zusammenfassung:

Dateioperationsfunktionsreihe: fopen, feof, fgets, fclose bzw. öffnen, das Ende finden, die Zeile abrufen, schließen

Die Bedeutung der Datenformatierung: als exportierte Daten von A In der Datenbank werden die Daten geformt und formatiert. Durch die Formatierung kann das Symbol automatisch entfernt werden.

array_combine Schlüssel-Wert-Merge-Array.

Verwandte Empfehlungen:

Grundlegende Vorgänge beim Lesen von Daten mit PHP

Beispielfreigabe für das Lesen lokaler JSON-Dateien mit PHP

PHP liest CSV-Dateidaten und generiert CSV-Dateien

Das obige ist der detaillierte Inhalt vonPHP liest CSV-Daten Zeile für Zeile in die Datenbank ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn