Maison > Article > développement back-end > Comment utiliser PHPExcel pour traiter des fichiers Excel ?
PHPExcel est une bibliothèque PHP open source pour le traitement des fichiers Microsoft Excel (.xls et .xlsx). Il peut lire, écrire et exploiter des fichiers Excel et offre une multitude de fonctions et de méthodes.
En utilisant la bibliothèque PHPExcel dans les projets PHP, vous pouvez traiter rapidement et facilement des fichiers Excel et implémenter des fonctions telles que l'importation, l'exportation et le traitement des données. Cet article explique comment utiliser PHPExcel pour traiter des fichiers Excel.
1. Installez PHPExcel
Pour utiliser PHPExcel, vous devez d'abord télécharger et installer la bibliothèque. La dernière version de PHPExcel peut être téléchargée sur le site officiel (https://github.com/PHPOffice/PHPExcel). Après avoir décompressé le package compressé, placez le dossier PHPExcel dans le projet, puis introduisez le fichier de chargement automatique de PHPExcel dans le fichier PHP :
require_once 'PHPExcel/Classes/PHPExcel.php';
2. Créez un fichier Excel
Utiliser Les fichiers PHPExcel Excel peuvent être rapidement créés et les données écrites. Voici un exemple de code pour créer un document Excel contenant trois lignes et trois colonnes et écrire des données :
$excel = new PHPExcel(); $excel->setActiveSheetIndex(0); $excel->getActiveSheet()->setCellValue('A1', '姓名') ->setCellValue('B1', '年龄') ->setCellValue('C1', '邮箱'); $excel->getActiveSheet()->setCellValue('A2', '张三') ->setCellValue('B2', 20) ->setCellValue('C2', 'zhangsan@example.com'); $excel->getActiveSheet()->setCellValue('A3', '李四') ->setCellValue('B3', 25) ->setCellValue('C3', 'lisi@example.com'); $excel->getActiveSheet()->setCellValue('A4', '王五') ->setCellValue('B4', 30) ->setCellValue('C4', 'wangwu@example.com'); header('Content-Type: application/vnd.ms-excel'); header('Content-Disposition: attachment;filename="example.xls"'); header('Cache-Control: max-age=0'); $writer = PHPExcel_IOFactory::createWriter($excel, 'Excel5'); $writer->save('php://output');
Dans ce code, un objet PHPExcel nommé $excel est d'abord créé, puis sa feuille de calcul par défaut est défini sur la première feuille de calcul (index 0). Écrivez ensuite les données dans la feuille de calcul Excel via la méthode setCellValue().
Enfin, définissez le type de fichier, le nom de fichier, le contrôle du cache et d'autres attributs du fichier Excel à sortir, et créez un objet d'instance $writer de PHPExcel_IOFactory pour écrire l'objet Excel $excel dans la sortie.
3. Lisez les fichiers Excel
Utilisez PHPExcel pour lire facilement les données dans les fichiers Excel. Voici un exemple de code pour lire un fichier Excel :
$objReader = PHPExcel_IOFactory::createReader('Excel5'); $objReader->setReadDataOnly(true); $objPHPExcel = $objReader->load("example.xls"); $worksheet = $objPHPExcel->getActiveSheet(); foreach ($worksheet->getRowIterator() as $row) { $cellIterator = $row->getCellIterator(); $cellIterator->setIterateOnlyExistingCells(false); $columns = []; foreach ($cellIterator as $cell) { $columns[] = $cell->getValue(); } if (count($columns) > 0) { echo implode('|', $columns) . " "; } }
Dans ce code, créez d'abord un objet lecteur Excel $objReader à l'aide de la méthode createReader() de la classe PHPExcel_IOFactory, puis utilisez la commande load( ) Chargez le fichier Excel example.xls en mémoire et récupérez enfin la première feuille de calcul du fichier Excel.
Ensuite, parcourez les cellules de chaque ligne et colonne, utilisez la méthode getValue() pour obtenir la valeur dans chaque cellule et concaténez toutes les données de chaque ligne dans une chaîne.
Enfin, affichez les données de chaque ligne.
4. Exporter un fichier Excel
Utilisez PHPExcel pour exporter des données vers des fichiers Excel. Voici un exemple de code pour exporter les données de la base de données MySQL vers un fichier Excel :
$pdo = new PDO('mysql:host=localhost;dbname=mydatabase', 'username', 'password'); $sql = "SELECT name, age, email FROM users"; $stmt = $pdo->query($sql); $excel = new PHPExcel(); $excel->setActiveSheetIndex(0); $excel->getActiveSheet()->setCellValue('A1', '姓名') ->setCellValue('B1', '年龄') ->setCellValue('C1', '邮箱'); $i = 2; while ($row = $stmt->fetch()) { $excel->getActiveSheet()->setCellValue('A' . $i, $row['name']) ->setCellValue('B' . $i, $row['age']) ->setCellValue('C' . $i, $row['email']); $i++; } header('Content-Type: application/vnd.ms-excel'); header('Content-Disposition: attachment;filename="users.xls"'); header('Cache-Control: max-age=0'); $writer = PHPExcel_IOFactory::createWriter($excel, 'Excel5'); $writer->save('php://output');
Dans ce code, connectez-vous d'abord à la base de données MySQL via l'objet PDO et interrogez les données dans la table des utilisateurs. Créez ensuite un objet PHPExcel nommé $excel et écrivez tour à tour les données de chaque ligne dans l'objet Excel.
Enfin, définissez le type de fichier, le nom de fichier, le contrôle du cache et d'autres attributs du fichier Excel à sortir, et créez un objet d'instance $writer de PHPExcel_IOFactory pour écrire l'objet Excel $excel dans la sortie.
5. Conclusion
Grâce à l'introduction de cet article, les lecteurs doivent comprendre comment utiliser PHPExcel pour traiter des fichiers Excel. En utilisant PHPExcel, vous pouvez facilement lire, écrire et utiliser des fichiers Excel, et en même temps, vous pouvez exporter des données d'autres sources de données (telles que la base de données MySQL) vers des fichiers Excel.
Bien que PHPExcel ait cessé la maintenance, en tant que bibliothèque de traitement Excel mature et stable, il peut toujours être utilisé dans de nombreux projets PHP et fournit de riches exemples de codes et une documentation pour référence.
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!