Heim >Backend-Entwicklung >PHP-Tutorial >Wie verwende ich PHPExcel zum Verarbeiten von Excel-Dateien?

Wie verwende ich PHPExcel zum Verarbeiten von Excel-Dateien?

WBOY
WBOYOriginal
2023-06-01 14:01:383490Durchsuche

PHPExcel ist eine Open-Source-PHP-Bibliothek zur Verarbeitung von Microsoft Excel-Dateien (.xls und .xlsx). Es kann Excel-Dateien lesen, schreiben und bearbeiten und bietet eine Fülle von Funktionen und Methoden.

Mit der PHPExcel-Bibliothek in PHP-Projekten können Sie Excel-Dateien schnell und einfach verarbeiten und Funktionen wie Datenimport, -export und Datenverarbeitung implementieren. In diesem Artikel wird erläutert, wie Sie PHPExcel zum Verarbeiten von Excel-Dateien verwenden.

1. Installieren Sie PHPExcel

Um PHPExcel zu verwenden, müssen Sie zuerst die Bibliothek herunterladen und installieren. Die neueste Version von PHPExcel kann von der offiziellen Website heruntergeladen werden (https://github.com/PHPOffice/PHPExcel). Platzieren Sie nach dem Dekomprimieren des komprimierten Pakets den PHPExcel-Ordner im Projekt und führen Sie dann die automatische Ladedatei von PHPExcel in die PHP-Datei ein:

require_once 'PHPExcel/Classes/PHPExcel.php';

2. Erstellen Sie eine Excel-Datei

Verwenden Mit PHPExcel können Excel-Dateien schnell erstellt und Daten geschrieben werden. Das Folgende ist ein Beispielcode zum Erstellen eines Excel-Dokuments mit drei Zeilen und drei Spalten und zum Schreiben von Daten:

$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');

In diesem Code wird zuerst ein PHPExcel-Objekt mit dem Namen $excel erstellt und dann sein Standardarbeitsblatt auf das erste Arbeitsblatt (Index 0) gesetzt. Schreiben Sie dann die Daten über die Methode setCellValue() in das Excel-Arbeitsblatt.

Legen Sie abschließend den Dateityp, den Dateinamen, die Cache-Steuerung und andere Attribute der auszugebenden Excel-Datei fest und erstellen Sie ein Instanzobjekt $writer von PHPExcel_IOFactory, um das Excel-Objekt $excel in die Ausgabe zu schreiben.

3. Excel-Dateien lesen

Verwenden Sie PHPExcel, um Daten in Excel-Dateien einfach zu lesen. Das Folgende ist ein Beispielcode zum Lesen einer Excel-Datei:

$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) . "
";
    }
}

In diesem Code erstellen Sie zunächst ein Excel-Reader-Objekt $objReader mit der Methode createReader() der Klasse PHPExcel_IOFactory und verwenden Sie dann die Funktion „load(“ )-Methode Laden Sie die Excel-Datei example.xls in den Speicher und rufen Sie schließlich das erste Arbeitsblatt in der Excel-Datei ab.

Durchlaufen Sie dann die Zellen in jeder Zeile und Spalte, verwenden Sie die Methode getValue(), um den Wert in jeder Zelle abzurufen, und verketten Sie alle Daten in jeder Zeile zu einer Zeichenfolge.

Geben Sie schließlich die Daten jeder Zeile aus.

4. Excel-Datei exportieren

Verwenden Sie PHPExcel, um Daten in Excel-Dateien zu exportieren. Im Folgenden finden Sie einen Beispielcode zum Exportieren von Daten in der MySQL-Datenbank in eine Excel-Datei:

$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');

Stellen Sie in diesem Code zunächst über das PDO-Objekt eine Verbindung zur MySQL-Datenbank her und fragen Sie die Daten in der Benutzertabelle ab. Erstellen Sie dann ein PHPExcel-Objekt mit dem Namen $excel und schreiben Sie die Daten jeder Zeile nacheinander in das Excel-Objekt.

Legen Sie abschließend den Dateityp, den Dateinamen, die Cache-Steuerung und andere Attribute der auszugebenden Excel-Datei fest und erstellen Sie ein Instanzobjekt $writer von PHPExcel_IOFactory, um das Excel-Objekt $excel in die Ausgabe zu schreiben.

5. Fazit

Durch die Einleitung dieses Artikels sollten die Leser verstehen, wie man PHPExcel zum Verarbeiten von Excel-Dateien verwendet. Mit PHPExcel können Sie Excel-Dateien einfach lesen, schreiben und bearbeiten und gleichzeitig Daten aus anderen Datenquellen (z. B. MySQL-Datenbanken) in Excel-Dateien exportieren.

Obwohl die Wartung von PHPExcel eingestellt wurde, kann es als ausgereifte und stabile Excel-Verarbeitungsbibliothek weiterhin in vielen PHP-Projekten verwendet werden und bietet umfangreiche Beispielcodes und Dokumentation als Referenz.

Das obige ist der detaillierte Inhalt vonWie verwende ich PHPExcel zum Verarbeiten von Excel-Dateien?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn