Maison > développement back-end > tutoriel php > Comment utiliser PHPExcel pour traiter des fichiers Excel ?

Comment utiliser PHPExcel pour traiter des fichiers Excel ?

WBOY
Libérer: 2023-06-01 14:02:01
original
3488 Les gens l'ont consulté

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

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

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

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

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!

É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