Maison > Article > développement back-end > Comment traiter des fichiers CSV en utilisant PHP (exemple de code)
En PHP, nous pouvons utiliser la fonction fgetcsv() pour analyser les fichiers CSV, qui peut analyser automatiquement les champs CSV dans une ressource donnée. L'article suivant vous donnera une introduction détaillée sur la façon d'utiliser PHP pour traiter les fichiers CSV. J'espère qu'il vous sera utile. [Recommandation tutoriel vidéo : Tutoriel PHP]
Qu'est-ce qu'un fichier CSV ?
Un fichier CSV est essentiellement un simple fichier texte conforme à un format spécifique, un format de fichier texte brut utilisé pour stocker des données, généralement utilisé dans un tableur ou un logiciel de base de données. Dans un fichier CSV, toutes les valeurs sont séparées par des virgules (d'où la signification de l'acronyme : valeurs séparées par des virgules), tandis que les lignes sont séparées par des nouvelles lignes.
Résumé : les fichiers CSV sont constitués de virgules, de données et de nouvelles lignes ; des lignes séparées et des valeurs/colonnes séparées par des virgules.
Un exemple de fichier CSV, nommez-le exemple.csv :
Ted,USA,21 Lisa,UK,23 Michael,USA,20 Louise,Ireland,30
Comme vous pouvez le constater : chaque ligne est séparée par des virgules la première colonne ; est le nom de la personne, la deuxième colonne est le pays de la personne et la dernière colonne est l'âge de la personne. Chaque personne est séparée par un caractère de nouvelle ligne ;
Comment traiter des fichiers CSV avec PHP ?
php peut utiliser la fonction fgetcsv() pour analyser les fichiers CSV ; cette fonction analyse une ligne du fichier ouvert et vérifie le champ CSV.
La syntaxe est la suivante :
fgetcsv("filename.csv", 1000, ",");
filename.csv : Le nom du fichier CSV.
1000 : Indique la longueur de la ligne la plus longue.
"," : Indique le paramètre délimiteur facultatif. La valeur par défaut est bien sûr la virgule (,).
Pour utiliser la fonction fgetcsv(), nous devons d'abord utiliser la fonction fopen() pour ouvrir le fichier en lecture, puis utiliser la fonction fclose() pour fermer le fichier et terminer le code. Entre les deux, nous utilisons une boucle pour analyser chaque ligne CSV séparément.
Ce qui suit est une brève introduction sur la façon de le gérer :
1 Utilisez la fonction fopen() pour ouvrir le fichier et le lire :
$h = fopen("filename.csv", "r");
Utiliser le mode "r" ouvre le fichier en lecture ; la variable $h contient le traitement des données du fichier.
2. Utilisez la fonction fgetcsv() pour lire les données du fichier CSV ligne par ligne et enregistrez chaque ligne de données séparément dans un tableau nommé $data.
$data = fgetcsv($h, 1000, ",");
Afin de lire toutes les lignes, nous devons utiliser une boucle while :
while (($data = fgetcsv($h, 1000, ",")) !== FALSE) { // 读取数据 }
3. Le fichier doit être fermé
fclose($h);
Combinez les 3 étapes ci-dessus :
<?php // 打开文件并阅读 if (($h = fopen("example.csv", "r")) !== FALSE) { // 将每行数据都转换为本地$data变量并储存 while (($data = fgetcsv($h, 1000, ",")) !== FALSE) { //输出每行数据 var_dump($data); } // 关闭文件 fclose($h); } ?>
Résultat :
Exemple de code : Convertir un fichier CSV en tableau multidimensionnel PHP
Le code suivant génère un tableau multidimensionnel ($the_big_array) dont chaque élément est constitué d'un tableau converti à partir d'une seule ligne dans le fichier CSV.
<?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 ""; ?>
Sortie :
Ce qui précède est l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'apprentissage de chacun. Pour un contenu plus passionnant, vous pouvez prêter attention aux colonnes de didacticiels pertinentes du site Web PHP chinois ! ! !
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!