Vor kurzem arbeite ich an einem Backend-Management-Projekt und es besteht normalerweise die Notwendigkeit, Daten nach Excel im Backend zu exportieren. Normalerweise wird empfohlen, PHP Excel zu verwenden, und das ist auch der Fall ein sehr nützliches entsprechendes Paket für PHP Excel.
Zuerst ist die Verwendung sehr einfach, aber wenn die zu exportierenden Daten Zehntausende erreichen, führt dies direkt zu einem Problem mit unzureichendem Speicher.
Dann habe ich ein paar Lösungen gefunden.
Frontend-Lösung
PHP arbeitet mit SheetJS/js-xlsx zusammen, um eine große Menge an Excel-Daten zu exportieren
Die Vorteile dieser Lösung liegen nicht in der Notwendigkeit zusätzlicher Schnittstellen, sondern in der Abhängigkeit von Frontend-Entwicklern.
Export nach CSV
Diese Lösung ist schneller und vollständig im Backend implementiert. Der Nachteil besteht darin, dass das CSV-Format relativ hohe Anforderungen an das Exportformular stellt , und die Anforderung ist reine Daten können nicht in Rich-Text-Form wie Bildern vorliegen.
Im Folgenden wird hauptsächlich das Exportieren von CSV vorgestellt
Einführung in die offizielle PHP-Dokumentation
<?php $list = array ( array('aaa', 'bbb', 'ccc', 'dddd'), array('123', '456', '789'), array('"aaa"', '"bbb"') ); $fp = fopen('file.csv', 'w'); foreach ($list as $fields) { fputcsv($fp, $fields); } fclose($fp); ?>
Vollständiges Beispiel exportieren
<?php $name = 'test'; header ( "Content-type:application/vnd.ms-excel" ); header ( "Content-Disposition:filename=".$name.".csv" ); header ('Cache-Control: max-age=0'); //打开PHP文件句柄,php://output 表示直接输出到浏览器 $fp = fopen('php://output', 'a'); // 写入BOM头,防止乱码 fwrite($fp, chr(0xEF).chr(0xBB).chr(0xBF)); // 生成的测试数据 function test() { for ($i=0; $i < 150000; $i++) { yield ['name', $i, '男']; } } // 表头 $headers = ['名字', '年龄', '性别']; fputcsv($fp, $headers); foreach (test() as $value) { fputcsv($fp, $value); } fclose($fp); ?>
Durch die Verwendung mit Chunk in Laravel können alle Daten einfach und schnell exportiert werden.
Verwandte Empfehlungen:
Tipps zum Exportieren von Daten nach Excel mit Python
php exportiert Daten in das Excel-Dateiformat
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Wissenspunkte zum PHP-Datenexport. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!