Heim  >  Artikel  >  Backend-Entwicklung  >  So exportieren Sie ein Array nach Excel in PHP

So exportieren Sie ein Array nach Excel in PHP

王林
王林Original
2023-05-05 20:34:05913Durchsuche

Während des Entwicklungsprozesses müssen wir häufig Daten in Excel-Dateien exportieren, um Benutzern das Herunterladen und Speichern zu erleichtern. Auch PHP als beliebte serverseitige Programmiersprache kann diese Funktion problemlos implementieren. In diesem Artikel wird erläutert, wie Sie mit PHP ein Array in eine Excel-Datei exportieren.

1. Vorbereitung

Bevor Sie mit dem Codieren beginnen, müssen Sie zunächst sicherstellen, dass PHPExcel, die Open-Source-PHP-Excel-Verarbeitungsbibliothek, auf dem Server installiert wurde. Wenn Sie es noch nicht installiert haben, können Sie es auf der offiziellen PHPExcel-Website herunterladen. Es ist sehr einfach zu verwenden. Sie müssen nur die PHPExcel-Bibliotheksdatei in Ihren Projektordner kopieren.

2. Erstellen Sie eine Excel-Datei und schreiben Sie Daten.

Das Erstellen einer neuen Excel-Datei und das Schreiben von Daten muss über das PHPExcel-Objekt in der PHPExcel-Bibliothek erfolgen. Das benutzerfreundliche PHPExcel-Objekt bietet mehrere nützliche Funktionen, mit denen Sie verschiedene Eigenschaften von Excel-Dateien definieren können.

Wenn wir beispielsweise eine neue Excel-Datei erstellen und deren Spaltenbreite und Zeilenhöhe definieren möchten, um die Daten besser anzuzeigen, können wir den folgenden Code verwenden:

//创建PHPExcel对象
$objPHPExcel = new PHPExcel();

//设置列宽
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(30);

//设置行高
$objPHPExcel->getActiveSheet()->getRowDimension(1)->setRowHeight(30);
$objPHPExcel->getActiveSheet()->getRowDimension(2)->setRowHeight(20);

Nachdem wir die Eigenschaften der Excel-Datei festgelegt haben, können wir das tun Schreiben Sie nun Daten in die Excel-Datei. Um den Export von Array-Daten nach Excel zu demonstrieren, können wir davon ausgehen, dass es Array-Daten wie unten gezeigt gibt:

$data = array(
    array('姓名', '年龄', '性别'),
    array('张三', '18', '男'),
    array('李四', '20', '女'),
    array('王五', '22', '男'),
);

Um diese Array-Daten in eine Excel-Datei zu schreiben, können Sie den folgenden Code verwenden:

//写入数据到工作表1
$objPHPExcel->setActiveSheetIndex(0);
$objPHPExcel->getActiveSheet()->fromArray($data, NULL, 'A1');

Der obige Code schreibt das Array data $data to In Blatt 1 der Excel-Datei werden Daten ab Zeile 1 und Spalte 1 geschrieben. $null bedeutet, dass PHPExcel das Format der Zellen automatisch entsprechend den eingegebenen Daten anpasst.

3. Excel-Datei exportieren

Nachdem die Array-Daten in die Excel-Datei geschrieben wurden, besteht der letzte Schritt darin, die generierte Excel-Datei lokal zu exportieren. Dazu müssen wir einige Antwortheader festlegen.

Zuerst müssen wir den Dateinamen der empfangenen Excel-Datei festlegen, damit Benutzer den Inhalt besser identifizieren können. Als nächstes müssen wir den Browser anweisen, eine Excel-Datei an den Benutzer zu übergeben, damit der Browser sie als Excel-Datei und nicht als reine Textdatei behandelt.

Der Code zum Implementieren der oben genannten Funktionen lautet wie folgt:

//设置响应头信息
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="测试导出.xlsx"');
header('Cache-Control: max-age=0');

//创建Excel文件
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');

//导出Excel文件到本地
$objWriter->save('php://output');

Der obige Code weist den Browser an, eine Excel-Datei zu empfangen, indem er relevante Antwortheaderinformationen festlegt. Anschließend erstellen wir das PHPExcel_IOFactory-Objekt und verwenden es, um Daten in die Datei zu schreiben und die Datei zu speichern.

Abschließend exportieren Sie die Excel-Datei auf den Client, indem Sie die Funktion $objWriter->save('php://output') aufrufen.

4. Vollständiger Code

Durch die Kombination der oben genannten Codeteile kann die Funktion zum Exportieren von Array-Daten in Excel-Dateien realisiert werden.

Der vollständige Code lautet wie folgt:

//引入PHPExcel库文件
require_once 'PHPExcel.php';

//创建PHPExcel对象
$objPHPExcel = new PHPExcel();

//设置列宽
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(30);

//设置行高
$objPHPExcel->getActiveSheet()->getRowDimension(1)->setRowHeight(30);
$objPHPExcel->getActiveSheet()->getRowDimension(2)->setRowHeight(20);

//定义数据
$data = array(
    array('姓名', '年龄', '性别'),
    array('张三', '18', '男'),
    array('李四', '20', '女'),
    array('王五', '22', '男'),
);

//将数组写入Excel文件
$objPHPExcel->setActiveSheetIndex(0);
$objPHPExcel->getActiveSheet()->fromArray($data, NULL, 'A1');

//设置响应头信息
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="测试导出.xlsx"');
header('Cache-Control: max-age=0');

//创建Excel文件
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');

//导出Excel文件到本地
$objWriter->save('php://output');

Der obige Code verwendet die PHPExcel-Bibliothek, um ein Excel-Objekt zu erstellen, schreibt Daten in Excel und exportiert schließlich die Excel-Datei an den Client.

5. Zusammenfassung

Php ist eine beliebte serverseitige Programmiersprache. In Kombination mit der PHPExcel-Bibliothek können Array-Daten einfach in Excel-Dateien exportiert und Benutzern zum Herunterladen und Speichern bereitgestellt werden. Im obigen Beispiel haben wir gezeigt, wie Sie die PHPExcel-Bibliothek zum Erstellen von Excel-Arbeitsmappen, zum Schreiben von Daten und zum Exportieren von Dateien verwenden. Wir hoffen, dass dies für Ihren Excel-Export in der PHP-Entwicklung hilfreich ist.

Das obige ist der detaillierte Inhalt vonSo exportieren Sie ein Array nach Excel in PHP. 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