Maison > développement back-end > tutoriel php > Comment traiter des fichiers CSV en utilisant PHP (exemple de code)

Comment traiter des fichiers CSV en utilisant PHP (exemple de code)

青灯夜游
Libérer: 2023-04-05 07:46:01
original
5284 Les gens l'ont consulté

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]

Comment traiter des fichiers CSV en utilisant PHP (exemple de code)

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
Copier après la connexion

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, ",");
Copier après la connexion

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");
Copier après la connexion

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, ",");
Copier après la connexion

Afin de lire toutes les lignes, nous devons utiliser une boucle while :

while (($data = fgetcsv($h, 1000, ",")) !== FALSE) 
{
  // 读取数据
}
Copier après la connexion

3. Le fichier doit être fermé

fclose($h);
Copier après la connexion

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);
}
?>
Copier après la connexion

Résultat :

Comment traiter des fichiers CSV en utilisant PHP (exemple de code)

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 = &#39;example.csv&#39;;
// 用于保存所有数据的多维(嵌套)数组
$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 "
Copier après la connexion
"; ?>

Sortie :

Comment traiter des fichiers CSV en utilisant PHP (exemple de code)

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal