Conseils de développement PHP : Comment utiliser PHPExcel et PHPExcel_IOFactory pour faire fonctionner la base de données MySQL
Présentation :
Dans le développement Web, le traitement des fichiers Excel est une tâche courante et importante. PHPExcel est une bibliothèque PHP puissante et facile à utiliser qui peut nous aider à lire et à écrire des fichiers Excel. Cet article explique comment utiliser les bibliothèques PHPExcel et PHPExcel_IOFactory pour faire fonctionner la base de données MySQL.
Étape 1 : Préparation
Tout d'abord, assurez-vous que les bibliothèques PHPExcel et PHPExcel_IOFactory sont installées sur votre serveur PHP. Vous pouvez télécharger les dernières versions depuis le site officiel et les extraire dans le répertoire de votre projet.
Étape 2 : Créer une connexion à la base de données
Avant d'utiliser PHPExcel, vous devez établir une connexion à la base de données MySQL. Une connexion à la base de données peut être créée à l'aide de l'exemple de code suivant :
<?php $servername = "localhost"; $username = "yourusername"; $password = "yourpassword"; $dbname = "yourdbname"; // 创建连接 $conn = new mysqli($servername, $username, $password, $dbname); // 检查连接是否成功 if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } ?>
Étape 3 : Lire les données de la base de données MySQL et générer le fichier Excel
Ensuite, nous utiliserons la bibliothèque PHPExcel pour lire les données de la base de données MySQL et générer le fichier Excel correspondant. Voici un exemple de code :
<?php require 'PHPExcel/PHPExcel.php'; // 创建一个新的Excel对象 $objPHPExcel = new PHPExcel(); // 选择活动工作表 $objPHPExcel->setActiveSheetIndex(0); // 查询数据库中的数据 $sql = "SELECT * FROM your_table_name"; $result = $conn->query($sql); // 设置Excel表头 $objPHPExcel->getActiveSheet()->setCellValue('A1', '列1标题'); $objPHPExcel->getActiveSheet()->setCellValue('B1', '列2标题'); $objPHPExcel->getActiveSheet()->setCellValue('C1', '列3标题'); // 将数据库查询结果填充到Excel中 if ($result->num_rows > 0) { $row = 2; while($row_data = $result->fetch_assoc()) { $objPHPExcel->getActiveSheet()->setCellValue('A'.$row, $row_data['column1']); $objPHPExcel->getActiveSheet()->setCellValue('B'.$row, $row_data['column2']); $objPHPExcel->getActiveSheet()->setCellValue('C'.$row, $row_data['column3']); $row++; } } // 保存Excel文件 $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save('output.xlsx'); ?>
Dans l'exemple de code, nous créons d'abord un nouvel objet Excel et sélectionnons la feuille de calcul active. Récupérez ensuite les données en interrogeant la base de données et remplissez les données dans Excel à l'aide de la méthode setCellValue. Enfin, nous enregistrons le fichier Excel sous Output.xlsx.
Étape 4 : Importer des données d'un fichier Excel vers la base de données MySQL
En plus d'exporter des données de la base de données, PHPExcel peut également nous aider à importer des données de fichiers Excel dans la base de données MySQL. Voici un exemple de code :
<?php require 'PHPExcel/PHPExcel.php'; // Load Excel文件 $objPHPExcel = PHPExcel_IOFactory::load('input.xlsx'); // 选择活动工作表 $objPHPExcel->setActiveSheetIndex(0); $sheet = $objPHPExcel->getActiveSheet(); // 循环遍历Excel行 foreach ($sheet->getRowIterator() as $row) { $cellIterator = $row->getCellIterator(); $cellIterator->setIterateOnlyExistingCells(false); // 获取每个单元格的值 $column1 = $cellIterator->current()->getValue(); $cellIterator->next(); $column2 = $cellIterator->current()->getValue(); $cellIterator->next(); $column3 = $cellIterator->current()->getValue(); // 将数据插入到数据库中 $sql = "INSERT INTO your_table_name (column1, column2, column3) VALUES ('$column1', '$column2', '$column3')"; $conn->query($sql); } ?>
Dans le code ci-dessus, nous chargeons d'abord le fichier Excel et sélectionnons la feuille de calcul active. Ensuite, en parcourant les lignes et les cellules, nous obtenons la valeur de chaque cellule et l'insérons dans la base de données MySQL.
Conclusion :
En utilisant les bibliothèques PHPExcel et PHPExcel_IOFactory, nous pouvons facilement traiter les fichiers Excel et interagir avec la base de données MySQL pour les données. Cet article décrit comment utiliser ces deux bibliothèques pour lire les données d'une base de données MySQL et générer un fichier Excel, et comment importer des données d'un fichier Excel dans une base de données MySQL. J'espère que ces exemples de codes seront utiles pour vos opérations Excel dans le développement PHP.
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!