Maison > Article > développement back-end > Comment lire des données Excel en php et les importer dans la base de données
PHP est un langage de programmation populaire utilisé pour développer des applications Web et des sites Web. Dans les applications Web, il est souvent nécessaire d'importer des données depuis des fichiers Excel (.xls ou .xlsx) dans une base de données. Cet article explique comment utiliser PHP pour lire des données Excel et les importer dans la base de données.
PHPExcel est une bibliothèque PHP permettant de lire et de traiter des fichiers Excel. Vous pouvez télécharger la bibliothèque PHPExcel depuis le site officiel (https://phpexcel.codeplex.com/) ou l'installer à l'aide de Composer. Si vous utilisez Composer, il vous suffit d'ajouter le code suivant au fichier composer.json :
{ "require": { "phpoffice/phpexcel": "1.8.*" } }
Exécutez la commande composer update
sur la ligne de commande et Composer installera automatiquement la bibliothèque PHPExcel. composer update
命令,Composer将自动安装PHPExcel库。
在导入Excel数据之前,您需要有一个Excel文件。您可以通过Microsoft Excel等软件创建一个Excel文件。注意,您需要将Excel文件保存为.xls或.xlsx格式。另外,Excel文件的第一行应该是表头,即列名称。例如:
ID | Name | Age | |
---|---|---|---|
1 | John | 25 | john@gmail.com |
2 | Mary | 30 | mary@yahoo.com |
3 | David | 35 | david@outlook.com |
使用PHPExcel读取Excel文件很简单。只需要按照以下步骤操作:
require_once 'vendor/autoload.php'; // 引入PHPExcel库 $path = 'example.xlsx'; // Excel文件路径 // 创建PHPExcel对象 $excel = PHPExcel_IOFactory::load($path); // 获取Excel的第一个工作表 $sheet = $excel->getActiveSheet(); // 获取工作表中的行数和列数 $highestRow = $sheet->getHighestRow(); $highestColumn = $sheet->getHighestColumn(); // 遍历每一行 for ($row = 2; $row <= $highestRow; $row++) { // 获取每一行的数据 $id = $sheet->getCellByColumnAndRow(0, $row)->getValue(); $name = $sheet->getCellByColumnAndRow(1, $row)->getValue(); $age = $sheet->getCellByColumnAndRow(2, $row)->getValue(); $email = $sheet->getCellByColumnAndRow(3, $row)->getValue(); // 在此处可以将行数据插入到数据库中 }
在以上示例中,我们使用PHPExcel库的load()
方法创建PHPExcel对象,并从Excel文件中加载数据。然后,我们获取Excel文件的第一个工作表,并使用getHighestRow()
和getHighestColumn()
方法获取行数和列数。最后,我们遍历每一行,使用getCellByColumnAndRow()
ID | Nom | Âge | |
---|---|---|---|
1 | Jean | 25 | john@gmail.com |
2 | Marie | 30 | mary@yahoo.com |
3 | David | 35 | david@outlook.com |
La lecture de fichiers Excel est facile avec PHPExcel. Suivez simplement ces étapes :
// 连接到数据库 $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } // 插入数据到数据库中 for ($row = 2; $row <= $highestRow; $row++) { $id = $sheet->getCellByColumnAndRow(0, $row)->getValue(); $name = $sheet->getCellByColumnAndRow(1, $row)->getValue(); $age = $sheet->getCellByColumnAndRow(2, $row)->getValue(); $email = $sheet->getCellByColumnAndRow(3, $row)->getValue(); $sql = "INSERT INTO myTable (id, name, age, email) VALUES ('$id', '$name', '$age', '$email')"; if ($conn->query($sql) === TRUE) { echo "New record created successfully"; } else { echo "Error: " . $sql . "<br>" . $conn->error; } } $conn->close(); // 关闭数据库连接Dans l'exemple ci-dessus, nous utilisons la méthode
load()
de la bibliothèque PHPExcel pour créer un objet PHPExcel et charger des données à partir d'un fichier Excel. Ensuite, nous obtenons la première feuille de calcul du fichier Excel et utilisons les méthodes getHighestRow()
et getHighestColumn()
pour obtenir le nombre de lignes et de colonnes. Enfin, nous parcourons chaque ligne, utilisons la méthode getCellByColumnAndRow()
pour obtenir les données de cellule de chaque ligne et les insérons dans la base de données. 🎜🎜Insérer une base de données🎜🎜🎜🎜 Pour insérer des données d'un fichier Excel dans la base de données, vous pouvez utiliser l'instruction SQL INSERT. Vous devez donc d'abord vous connecter à la base de données, puis insérer les données dans la base de données. 🎜rrreee🎜Dans l'exemple ci-dessus, nous utilisons mysqli pour nous connecter à la base de données MySQL. Dans chaque ligne de données, nous utilisons l'instruction SQL INSERT pour insérer les données dans la table myTable. Si l'insertion réussit, nous verrons le message "Nouvel enregistrement créé avec succès", sinon un message d'erreur sera affiché. 🎜🎜🎜Résumé🎜🎜🎜Il est facile d'importer des données depuis Excel en utilisant PHP. Il vous suffit d'utiliser la bibliothèque PHPExcel pour lire le fichier Excel et insérer les données dans la base de données. Dans l'exemple ci-dessus, nous avons montré comment importer des données dans une base de données MySQL à l'aide de la bibliothèque PHPExcel et de l'instruction SQL INSERT. 🎜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!