Maison >développement back-end >tutoriel php >PHP lit les données CSV ligne par ligne dans la base de données
Exigence : Importer les données csv exportées du fichier Excel dans la base de données
La solution est la suivante :
// 判断文件是否上传成功 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);
Résumé :
Série de fonctions d'opération de fichier : fopen, feof, fgets, fclose respectivement ouvrir, trouver la fin, obtenir la ligne, fermer
La signification du formatage des données : comme les données exportées de A base de données, il y aura des données de mise en forme +", le formatage peut supprimer automatiquement le symbole "
array_combine tableau de fusion clé-valeur.
Recommandations associées :
Opérations de base de lecture de données avec Php
Exemple de partage de lecture de fichiers json locaux avec Php
PHP lit les données des fichiers CSV et génère des fichiers CSV
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!