Maison > développement back-end > tutoriel php > Comment extraire et afficher des données à partir de fichiers CSV en utilisant PHP

Comment extraire et afficher des données à partir de fichiers CSV en utilisant PHP

王林
Libérer: 2023-09-08 22:02:01
avant
1007 Les gens l'ont consulté

Comment extraire et afficher des données à partir de fichiers CSV en utilisant PHP

Dans cet article, nous apprendrons comment afficher les données d'un fichier CSV à l'aide des fonctions fgetcsv(), str_getcsv et SplFileObject de PHP.

Le fichier CSV est un format de fichier simple utilisé pour stocker des données avec des valeurs séparées par des virgules, et chaque ligne représente un enregistrement dans les données tabulaires. Pour lire un fichier CSV à l'aide de PHP, nous utiliserons la fonction fgetcsv() qui lit un. ligne à partir d'un fichier CSV et renvoie un tableau de valeurs représentant les données CSV présentes dans cette ligne.

Comprenons ce problème à travers l'exemple suivant -

La traduction chinoise de

Exemple 1

est :

Exemple 1

Dans cet exemple, nous utiliserons la fonction fgetcsv() pour lire un fichier CSV de données et afficher les valeurs sous forme de tableau à l'aide de la balise HTML table.

Fichier CSV utilisé dans cet exemple−

Données.csv

Name, Age, City
John, 30, New York
Mary, 25, Los Angeles
Tom, 40, Chicago
Copier après la connexion

Nom du fichier : index.php

<html lang="en">
<head>
   <title>How to Display Data from CSV file using PHP?</title>
</head>
<body>
  <h3>How to Display Data from CSV file using PHP?</h3>
  <?php
    $csvFile = fopen('Data.csv', 'r');

    echo '<table>';
    while (($data = fgetcsv($csvFile, 1000, ",")) !== FALSE) {
      echo '<tr>';
      foreach ($data as $value) {
        echo '<td>' . htmlspecialchars($value) . '</td>';
      }
      echo '</tr>';
    }
    echo '</table>';

    fclose($csvFile);
	?>
</body>
</html>
Copier après la connexion
La traduction chinoise de

Exemple 2

est :

Exemple 2

Dans cet exemple, nous allons lire un fichier CSV d'étudiant contenant le nom, l'âge et le sexe de l'étudiant et afficher ses données sous forme de tableau en utilisant 3 méthodes différentes (en utilisant les méthodes str_getcsv, fgetcsv et SplFileObject).

La traduction chinoise de

Students.csv

est :

Students.csv

Name,Age,Gender
John Doe,25,Male
Jane Smith,30,Female
Bob Johnson,40,Male
Sara Lee,22,Female
Copier après la connexion

Nom du fichier : index.php

<html lang="en">
<head>
   <title>How to Display Data from CSV file using PHP?</title>
</head>
<body>
  <h3>How to Display Data from CSV file using PHP?</h3>
  
  <!-- Method 1: str_getcsv -->
  <?php
    $csvData = file_get_contents('students.csv');
    $rows = str_getcsv($csvData, "</p><p>"); // Split CSV data into rows
    
    echo '<h4>Method 1: str_getcsv</h4>';
    echo '<table>';
    echo '<thead><tr><th>Name</th><th>Age</th><th>Gender</th></tr></thead>';
    echo '<tbody>';
    
    foreach ($rows as $row) {
      $values = str_getcsv($row, ","); // Split row into values
      echo '<tr>';
      foreach ($values as $value) {
        echo '<td>' . htmlspecialchars($value) . '</td>';
      }
      echo '</tr>';
    }
    
    echo '</tbody></table>';
  ?>
  
  <!-- Method 2: Combine fgetcsv() and HTML -->
  <?php
    echo '<h4>Method 2: Combine fgetcsv() and HTML</h4>';
    $csvFile = fopen('students.csv', 'r');
    echo '<table>';
    echo '<thead><tr><th>Name</th><th>Age</th><th>Gender</th></tr></thead>';
    echo '<tbody>';
    while (($data = fgetcsv($csvFile, 1000, ",")) !== FALSE) {
      echo '<tr>';
      foreach ($data as $value) {
        echo '<td>' . htmlspecialchars($value) . '</td>';
      }
      echo '</tr>';
    }
    echo '</tbody></table>';
    fclose($csvFile);
  ?>
  
  <!-- Method 3: using SplFileObject -->
  <?php
    echo '<h4>Method 3: using SplFileObject</h4>';
    $csvFile = new SplFileObject('students.csv', 'r');
    $csvFile->setFlags(SplFileObject::READ_CSV);
    
    echo '<table>';
    echo '<thead><tr><th>Name</th><th>Age</th><th>Gender</th></tr></thead>';
    echo '<tbody>';
    
    foreach ($csvFile as $row) {
      echo '<tr>';
      foreach ($row as $value) {
        echo '<td>' . htmlspecialchars($value) . '</td>';
      }
      echo '</tr>';
    }
    
    echo '</tbody></table>';
  ?>
Copier après la connexion

Conclusion

En résumé, afficher les données d'un fichier CSV en utilisant PHP est un processus simple, vous pouvez utiliser la fonction fgetcsv(). À l'aide de balises HTML, nous pouvons facilement afficher les données sous forme de tableau. En suivant les exemples fournis dans cet article, nous avons appris à lire et afficher les données de fichiers CSV en PHP, ce qui peut être utile dans diverses applications.

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:tutorialspoint.com
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