Heim > Backend-Entwicklung > PHP-Tutorial > Generieren Sie Excel -Dateien und Diagramme mit PHPExcel

Generieren Sie Excel -Dateien und Diagramme mit PHPExcel

William Shakespeare
Freigeben: 2025-02-20 09:33:14
Original
866 Leute haben es durchsucht

Generieren Sie Excel -Dateien und Diagramme mit PHPExcel

Nach meinem Artikel „So erstellen Sie Microsoft -Word -Dokumente mit PHP“ (unter Verwendung der Interop -Funktion unter Windows), gab es einige Kommentare, die eine reine PHP -Implementierung forderten, d. H. Nur eine universelle PHP -Bibliothek zur Manipulation von Bürodateien.

In diesem Artikel werden wir sehen, wie eine Phpexcel -Bibliothek verwendet wird, um in einer Web -App eine Funktion „Exportieren zu Excel“ bereitzustellen, damit der Benutzer die Daten zur weiteren Analyse in eine Excel 2007/2013 -Datei exportieren kann.

HINWEIS: Es gibt einige PHP -Bibliotheken, die Excel- (und Office-) Dateimanipulationen bereitstellen können. Die Lib, die wir hier verwenden, heißt Phpexcel, eine Untergruppe von Phpoffice, die hier kloniert werden kann.

Key Takeaways

  • phpexcel, eine Teilmenge von PhpOffice, ermöglicht eine reine PHP -Manipulation von Excel -Dateien, wodurch die Notwendigkeit von Interop und Windows -Abhängigkeit vermieden wird.
  • Das Tutorial zeigt, dass das Erstellen einer Excel -Datei mit Spieldaten, zusätzlichen Analysen und Diagrammen mithilfe von PHPExcel zur Verbesserung der Datenpräsentation und -analyse verwendet wird.
  • Erforderliches Setup enthält die PHP -Version über 5.2.0, die spezifische PHP -Erweiterungen aktiviert und der Komponist für die Phpexcel -Installation verwendet.
  • Phpexcel ermöglicht detaillierte Manipulationen für Excel -Dateien, einschließlich Festlegen von Eigenschaften, Bevölkerungsarbeitsblättern, Einfügen von Formeln und Erstellen visuell ansprechender Diagramme.
  • Die endgültige Ausgabe besteht darin, die Excel -Datei in einem herunterladbaren Format zu speichern, um sicherzustellen, dass Diagramme enthalten sind, mit einem Hinweis zur aktuellen Unfähigkeit von PHPExcel, Kreisdiagramme in Excel 2013 effektiv zu verarbeiten.

Ziele

Nach diesem Tutorial erhalten wir:

  • Ein Blatt, das die Spielinformationen (Datum gespielt, Teams, Score, Win/Lose Status) meines Lieblings-NBA-Teams-La Lakers, in seiner Saison 2013/14 zeigt.
  • Eine Schaltfläche, die die Daten in eine Excel 2013 -Datei exportiert.
  • Diese Excel -Datei wird mit einigen zusätzlichen analytischen Daten gefüllt und ein Diagramm, das auch von PHP und Excel generiert wird.

Beginnen wir an.

Vorbereitung

Um PHPExcel zu verwenden, müssen wir über 5.2.0 eine PHP -Version haben. Es sind auch 3 PHP-Erweiterungen aktiviert: PHP_zip (was für die Betreiberung von Office 2007-Formaten von wesentlicher Bedeutung ist), php_xml und php_gd2 (optional, jedoch für die genaue Spaltenbreite automatische Kalkulation erforderlich).

).

Installieren Sie als nächstes die Bibliothek über den Komponisten.

Natürlich sollten wir unsere Datenbank in Betrieb haben. Der Datenmüll für dieses Tutorial (Lakers.sql) wurde in das mit diesem Artikel zugeordnete Repo hochgeladen. Die Daten werden mit einer einfachen SQL-Anweisung abgerufen: "Ausgewählte * von Lakers" (insgesamt 90 Datensätze, einschließlich 8 Vorsaisonen und 82 reguläre Saisonspiele).

Außerdem verwendet diese Demo Silex als MVC -Framework. Zweig wird als Vorlagenmotor verwendet. Stellen Sie sicher, dass die erforderlichen Abhängigkeiten in Ihrer Datei composer.json korrekt angegeben sind.

Die Indexdatei

index.php ist der Einstiegspunkt für unsere Silex -Anwendung. Es werden zwei Routen definiert:
<span>$app->get('/', function () use ($app)
</span><span>{
</span>    <span>$c=new trExcel<span>\Excel</span>();
</span>    <span>return $c->index($app);
</span><span>});
</span>
<span>$app->post('/export', function () use ($app)
</span><span>{
</span>    <span>$c=new trExcel<span>\Excel</span>();
</span>    <span>return $c->export($app);
</span><span>});</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Route '/' ist unser Einstiegspunkt und zeigt die Daten und die Schaltfläche „Exportieren“ an. Die Route '/Export' führt den Back -End -Handlingsprozess durch, der tatsächlich in Exporte exportiert. Beide Funktionen sind in eine benutzerdefinierte Klasse (classexcel.php) verpackt. Im Rest dieses Artikels konzentrieren wir uns auf diese Datei - oder genauer gesagt die in dieser Datei definierte Exportfunktion und verwandte Funktionen und diskutieren mehrere wichtige Aspekte der Excel -Manipulation mithilfe der Phpexcel -Bibliothek.

Excel -Anwendung und deren Meta -Daten

Wenn wir auf das Symbol klicken, um Excel zu starten, startet die Excel -Anwendung. Unter normalen Umständen wird es auch eine Arbeitsmappe mit 3 (in Excel 2013, nur 1) Arbeitsblättern enthalten. Das Arbeitsblatt ist das „Leinwand“, mit dem wir spielen. Dies sind die beiden wichtigsten Begriffe in Excel. Weitere wichtige Begriffe können: Zelle, Bereich usw.

Um eine Excel -Datei zu instanziieren, verwenden wir:

<span>$ea = new <span>\PHPExcel</span>(); // ea is short for Excel Application</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Eine Excel -Anwendungsinstanz wird normalerweise einer physischen Excel -Datei zugeordnet. Es verfügt über eigene Meta -Daten, um die von uns erstellte Datei zu beschreiben. Die Meta-Daten werden angezeigt, wenn wir eine Excel-Datei „Alt-Enter“ (oder mit der rechten Maustaste auf diese Datei klicken und „Eigenschaften“ auswählen):

Generieren Sie Excel -Dateien und Diagramme mit PHPExcel

Die im obigen Dialog angezeigten Eigenschaften haben entsprechende SETXXXX -Methoden zum Festlegen dieser Eigenschaften, wobei XXXX nahezu identisch mit den im Dialog angegebenen Eigenschaftennamen ist:

<span>$ea->getProperties()
</span>   <span>->setCreator('Taylor Ren')
</span>   <span>->setTitle('PHPExcel Demo')
</span>   <span>->setLastModifiedBy('Taylor Ren')
</span>   <span>->setDescription('A demo to show how to use PHPExcel to manipulate an Excel file')
</span>   <span>->setSubject('PHP Excel manipulation')
</span>   <span>->setKeywords('excel php office phpexcel lakers')
</span>   <span>->setCategory('programming')
</span>   <span>;</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Die Methoden (setxxxx) sind ziemlich selbsterklärend und zart dem Dialog "Eigenschaften" recht gut. Es gibt einige Unstimmigkeiten in der Zuordnung, aber sie sind für uns nicht allzu schwierig, die Verbindung herzustellen (z. B. werden „Autoren“ auf SetCreator zugeordnet).

Arbeitsblatt und Zellpopulation

Das Arbeitsblatt ist wahrscheinlich das Objekt, das wir am meisten manipulieren: Zellen mit Daten oder Formeln, Anwenden von Stilen, Datenfilterung, Einfügen eines Diagramms usw.

Um den Verweis auf ein Arbeitsblatt zu erhalten, verwenden wir:

<span>$ews = $ea->getSheet(0);
</span><span>$ews->setTitle('Data');</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Die Blätter in einer Arbeitsmappe sind immer 0-idexiert. Das erste (und bisher nur das einzige) Blatt ist Blatt Null. Der Standardname dieses Blatts lautet immer „Arbeitsblatt“ und wir können es mit der Setitle -Methode ändern.

Um eine Zelle/Zellen zu bevölkern, haben wir mindestens zwei Optionen:

  1. Bei diesen Überschriften, Titeln und anderen beschreibenden Elementen werden wir sie nacheinander mithilfe der SetCellValue -Methode bevölkern.
  2. Für strukturierte Daten, von denen die meisten aus einer SQL -Auswahlanweisung stammen, werden wir die von ARAY -Methode verwenden.
<span>$ews->setCellValue('a1', 'ID'); // Sets cell 'a1' to value 'ID 
</span>    <span>$ews->setCellValue('b1', 'Season');
</span>	<span>...
</span>    <span>//Fill data 
</span>    <span>$ews->fromArray($data, ' ', 'A2');</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Die von ARray -Methode nimmt 3 Parameter an:
1. Die Datenquelle in Array -Form;
2. Ein "Füllstoff" -Wert für den Fall, dass die Daten null sind;
3. Eine Zellreferenz zum Starten der Füllung (von links nach rechts, dann nach unten).

Hinweis: Wenn wir PDO zum Abrufen der Daten verwenden, ist ein einfaches $ res = $ q-> fetchall (pdo :: fetch_assoc); Call erzwingt den zurückgegebenen Ergebnisdatensatz so, dass nur ein zugehöriges Array ohne Index enthält. Wenn Fetchall ohne die Option PDO :: fetch_assoc aufgerufen wird, enthält der Ergebnissatz tatsächlich zwei Sätze identischer Daten, einen in zugeordneten Array -Formular, einen in indiziertem Formular und erstellt Duplikate in der Excel -Datei, wenn sie von ARray verwendet werden.

Möglicherweise möchten wir auch die Kopfzeile (ID, Jahreszeit usw.) stylen. Dazu haben wir auch zwei Möglichkeiten:

<span>$app->get('/', function () use ($app)
</span><span>{
</span>    <span>$c=new trExcel<span>\Excel</span>();
</span>    <span>return $c->index($app);
</span><span>});
</span>
<span>$app->post('/export', function () use ($app)
</span><span>{
</span>    <span>$c=new trExcel<span>\Excel</span>();
</span>    <span>return $c->export($app);
</span><span>});</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Eine Möglichkeit besteht darin, einige GET -Methoden zu verwenden, um das Stilobjekt abzurufen, das wir ändern und ändern möchten. Wir tun dies für den Stil „Hintergrundfüllung“.

Das andere ist es, ein "Stil" -Array zu deklarieren und die Stile anzugeben, die wir ändern möchten und wozu sie geändert werden sollen. Anschließend verwenden wir ApplyFromArray, um die Stile in einer Charge anzuwenden. Hier haben wir die Schrift und die Ausrichtung geändert.

Beide Methoden unterstützen den Bereich als Parameter ($ header = 'a1: h1';), was sehr bequem ist.

Schließlich möchten wir möglicherweise die Säulenbreite einstellen, damit sie die maximale angezeigte Länge in jede Spalte einstellen:

<span>$ea = new <span>\PHPExcel</span>(); // ea is short for Excel Application</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Leider unterstützt dies keinen Bereichsparameter, daher verwenden wir eine für die Schleife, um dies zu erreichen.

Wenn wir jetzt die Datei speichern - wir werden später speichern - wir werden sehen, dass die XLSX -Datei mit den Daten gefüllt und ordnungsgemäß formatiert ist:

Generieren Sie Excel -Dateien und Diagramme mit PHPExcel

Hinzufügen eines weiteren Blattes und Einfügen von Formeln

Ich verwende immer ein separates Blatt, um die Originaldaten zu speichern, und mindestens ein weiteres Blatt, um die Zusammenfassung und/oder analytische Informationen anzuzeigen.

Um ein neues Arbeitsblatt einzufügen, tun wir:

<span>$ea->getProperties()
</span>   <span>->setCreator('Taylor Ren')
</span>   <span>->setTitle('PHPExcel Demo')
</span>   <span>->setLastModifiedBy('Taylor Ren')
</span>   <span>->setDescription('A demo to show how to use PHPExcel to manipulate an Excel file')
</span>   <span>->setSubject('PHP Excel manipulation')
</span>   <span>->setKeywords('excel php office phpexcel lakers')
</span>   <span>->setCategory('programming')
</span>   <span>;</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Die Addsheet -Methode erfordert zwei Parameter.

  • $ ews2: Die Excel -Arbeitsblattinstanz, die wir einfügen sollen;
  • $ Ort: Der Index dieses Arbeitsblatts. Also bedeutet 0, es sollte der erste werden. -1 bedeutet, dass es das letzte sein sollte.

Mit dem eingefügten Arbeitsblatt können wir die Zellen in diesem Arbeitsblatt wie gewohnt bevölkern und Stile anwenden. In diesem Blatt verwenden wir Formeln:

<span>$ews = $ea->getSheet(0);
</span><span>$ews->setTitle('Data');</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Sie sehen, es unterscheidet sich nicht von dem, was wir im vorherigen Abschnitt getan haben. Die Formelzeichenfolge ist genau wie die, die wir in eine Excel -Datei eingeben, um die erforderliche Berechnung durchzuführen.

HINWEIS: Bitte achten Sie besonders auf die Zellreferenz (G2: G91). Eine faule Art zum Schreiben dieser Formel besteht darin, einen Bereich wie G: g zu verwenden. Dies funktioniert einwandfrei, wenn es keine Tabelle im Blatt gibt. Wenn es ein Diagramm gibt, fällt die G: G -Notation aus und bringt eine Ausnahme.

Dieses "Zusammenfass" -Blatt sieht wie folgt aus:

Generieren Sie Excel -Dateien und Diagramme mit PHPExcel

Der in Zelle B4 gezeigte % wird durch den folgenden Code festgelegt:

<span>$ews->setCellValue('a1', 'ID'); // Sets cell 'a1' to value 'ID 
</span>    <span>$ews->setCellValue('b1', 'Season');
</span>	<span>...
</span>    <span>//Fill data 
</span>    <span>$ews->fromArray($data, ' ', 'A2');</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Bitte beachten Sie hier einige Styling -Probleme. Für A1 habe ich den folgenden Stil angewendet:

<span>$app->get('/', function () use ($app)
</span><span>{
</span>    <span>$c=new trExcel<span>\Excel</span>();
</span>    <span>return $c->index($app);
</span><span>});
</span>
<span>$app->post('/export', function () use ($app)
</span><span>{
</span>    <span>$c=new trExcel<span>\Excel</span>();
</span>    <span>return $c->export($app);
</span><span>});</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Das Ergebnis zeigt, dass das Schriftgewicht, die Schriftgröße und die Ausrichtung korrekt angewendet werden. Die Verschmelzung von A1 und B1 in A1 erfolgt ebenfalls korrekt. Die setAutosize -Methode schlägt jedoch in dieser zusammengeführten Zelle fehl. Das Ergebnis ist, dass diese Zelle (A1) immer noch gepresst wird. Dies bedeutet, dass die Berechnung der automatischen Breite nicht immer funktioniert. Nun, sowieso keine große Sache.

Ein Bild ist mehr als tausend Wörter

wert

Es ist immer schön, eine visuelle Darstellung unserer Daten zu haben, sodass das Diagramm nützlich ist. Excel verfügt über eine Reihe integrierter Diagramme, aus denen wir auswählen können. PHPExcel kann fast alle davon abschließen. Das erste Diagramm, das wir erstellen sollen, ist ein Zeilendiagramm, das die Höhen und Tiefen der Ergebnisse in jedem Spiel des Lakers -Teams und seines Gegners zeigt.

Erstellen eines Diagramms ist auch mit Unterstützung einer Bibliothek ein langwieriger Codierungsjob. Der vollständige Code dieses Prozesses finden Sie in den Methoden AddChart1 und AddChart2, die sich in unserer Datei classexcel.php befinden. Ich werde nur die wichtigsten Schritte erklären.

  • Datenreihenbezeichnungen

Eine Data -Serie -Etikett identifiziert Datenreihen, indem sie einen Namen (Etikett) geben. In unserem Fall, wenn wir die Punktzahlen von Lakers und ihren Gegner zeigen wollen, sehen wir uns zwei Labels an: Self Score und Gegner. Ihre Etiketten finden Sie in D1 bzw. E1:

<span>$ea = new <span>\PHPExcel</span>(); // ea is short for Excel Application</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Eine Data -Series -Etikett ist eigentlich eine Instanz von PHPExcel_Chart_DataSeriesValues. Der Konstruktor enthält vier Parameter:

  1. der Typ. Für ein Etikett sollte es zweifellos „String“ sein;
  2. Quelle. Es ist in D1 oder e1;
  3. Format. Normalerweise ist die Bereitstellung von Null ausreichend und das Standardformat wird verwendet;
  4. zählen. Wie viel Daten in der Quelle. Es sollte normalerweise 1.
  5. sein

  • x Achsenwertbezeichnung

Dies identifiziert das Etikett für die x -Achse. Zum Beispiel erzielte Lakers bei „2013-11-15“ 86 und ihr Gegner erzielte 89. Die „2013-11-15“ ist das Label für diese beiden Punkte. Für unseren Fall werden wir die Spalte "Date gespielt" von Zeile 2 bis Zeile 91:

verwenden
<span>$ea->getProperties()
</span>   <span>->setCreator('Taylor Ren')
</span>   <span>->setTitle('PHPExcel Demo')
</span>   <span>->setLastModifiedBy('Taylor Ren')
</span>   <span>->setDescription('A demo to show how to use PHPExcel to manipulate an Excel file')
</span>   <span>->setSubject('PHP Excel manipulation')
</span>   <span>->setKeywords('excel php office phpexcel lakers')
</span>   <span>->setCategory('programming')
</span>   <span>;</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Der Konstruktor ist der gleiche, ebenso wie die Parameter.

  • Datenreihenwerte

Wir werden "Self Score" (Spalte D) und "Gegner Score" (Spalte E) verwenden. Beide sind von Reihe 2 bis zur Reihe 91.

<span>$ews = $ea->getSheet(0);
</span><span>$ews->setTitle('Data');</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Nachdem wir die oben genannten 3 kritischen Variablen hatten, können wir die Datenreihen einrichten. In Excel enthält eine Datenreihe die folgenden Informationen, die für das Erstellen eines Diagramms unerlässlich sind:

  • Diagrammtyp
  • Gruppierung
  • Anzahl der Datenreihen Werte
  • Data Series Label
  • x Achsenwertbezeichnung
  • Datenreihenwerte

und der Konstruktor wird aufgerufen, indem einfach alle diese Parameter bestanden werden:

<span>$ews->setCellValue('a1', 'ID'); // Sets cell 'a1' to value 'ID 
</span>    <span>$ews->setCellValue('b1', 'Season');
</span>	<span>...
</span>    <span>//Fill data 
</span>    <span>$ews->fromArray($data, ' ', 'A2');</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Als nächstes werden wir den Handlungsbereich und die Legende erstellen:

<span>$app->get('/', function () use ($app)
</span><span>{
</span>    <span>$c=new trExcel<span>\Excel</span>();
</span>    <span>return $c->index($app);
</span><span>});
</span>
<span>$app->post('/export', function () use ($app)
</span><span>{
</span>    <span>$c=new trExcel<span>\Excel</span>();
</span>    <span>return $c->export($app);
</span><span>});</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Ein Plotbereich enthält ein Layout des Diagramms und der Datenreihe. Das Layout kann angeben, ob das Diagramm Werte, Prozentsätze usw. anzeigen muss. Wir können NULL verwenden, damit ein Standardlayout verwendet wird.

Eine Legende wird verwendet, um eine visuelle Darstellung der Datengruppen bereitzustellen.

Und jetzt können wir endlich das Diagramm erstellen:

<span>$ea = new <span>\PHPExcel</span>(); // ea is short for Excel Application</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Der einzige neue Parameter in diesem Konstruktor ist der Name des Diagramms. "Chart1" wird gut genug sein. Ein Titel des Diagramms kann über:

erstellt werden
<span>$ea->getProperties()
</span>   <span>->setCreator('Taylor Ren')
</span>   <span>->setTitle('PHPExcel Demo')
</span>   <span>->setLastModifiedBy('Taylor Ren')
</span>   <span>->setDescription('A demo to show how to use PHPExcel to manipulate an Excel file')
</span>   <span>->setSubject('PHP Excel manipulation')
</span>   <span>->setKeywords('excel php office phpexcel lakers')
</span>   <span>->setCategory('programming')
</span>   <span>;</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Nachdem das Diagramm erstellt wurde, setzen wir seine Position und Größe, indem wir die Koordinaten des oberen linken und unteren rechten Ecken einstellen und in das Arbeitsblatt einfügen.

Hinweis: In den meisten Fällen ist eine Zellreferenz unempfindlich, aber bitte verwenden Sie die Kapitalbuchstabennummer, wenn im Blatt ein Diagramm vorhanden ist.

Speichern Sie die Datei

Als letzter Schritt speichern wir die Datei, damit der Benutzer sie herunterladen kann:

<span>$ews = $ea->getSheet(0);
</span><span>$ews->setTitle('Data');</span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

verwendet ein Werksmuster, um ein Schriftstellerobjekt zu erstellen, um die Datei zu speichern. Ein Format wird angegeben (wir verwenden in unserem Fall das Format „Excel2007“).

Stellen Sie sicher, dass wir im Sparenprozess SetIncludechArts (TRUE) haben, andernfalls ist das Diagramm nicht vorhanden.

Erinnerst du dich, als ich sagte, dass Phpexcel fast alle Diagrammtypen nutzen könnte? Eine Ausnahme, dass diese LIB in Excel 2013 nicht gut abschneiden kann, ist, dass sie kein nutzbares Kreisdiagramm erzeugt. In unserem output.xlsx und unserem Code haben wir tatsächlich ein Kreisdiagramm erstellt (erledigt in AddChart1), aber beim Öffnen der Ausgabe.xlsx wird Excel 2013 einen Fehler auffordern. Wenn wir uns für weiterentwickeln, geht das Kreisdiagramm verloren und nur das Zeilendiagramm (erledigt in AddChart2) bleibt erhalten. Ein Fehlerbericht wurde bereits in sein Git -Repo eingereicht.

Jetzt sieht das Blatt „Daten“ so aus:

Generieren Sie Excel -Dateien und Diagramme mit PHPExcel

und eine Zoomansicht des Diagramms. Es ist richtig positioniert und dimensioniert:

Generieren Sie Excel -Dateien und Diagramme mit PHPExcel

Schlussfolgerung

In diesem Artikel haben wir gezeigt, wie man reines PHP und ein reines PHP -LIB (PHPExcel) verwendet, um Excel zu manipulieren. Wir haben eine neue Datei erstellt, die Daten besiedelt, in einem neuen Blatt und analytischen Daten hinzugefügt, ein Diagramm eingefügt und schließlich die Datei zum Download gespeichert.

Im Allgemeinen fand ich diese Phpexcel lib es wert und leicht zu lernen. Der Code -Einblick in eine IDE kann uns beim Programmieren sehr helfen.

Wir haben keine anderen gemeinsamen Funktionen in einer Excel -Datei behandelt - wir schreiben einen Folgeartikel zu diesen, wenn das Interesse hoch genug ist. Lass es uns wissen!

Seine offizielle Dokumentation und Beispiele sind ein schöner Ort, um detaillierte API -Nutzungserklärungen und praktikable Code -Snippets für gemeinsame Aufgaben zu finden. Lesen Sie sie gründlich. Sie können im geklonten Repo gefunden werden. Probieren Sie diese Bibliothek aus und teilen Sie uns Ihre eigenen Anwendungsfälle mit!

häufig gestellte Fragen (FAQs) zum Generieren von Excel -Dateien und Diagrammen mit PHPExcel

Wie kann ich Phpexcel in meinem Projekt installieren? Zunächst müssen Sie einen Komponisten installieren, wenn Sie dies nicht getan haben. Navigieren Sie nach der Installation des Komponisten zu Ihrem Projektverzeichnis im Terminal und führen Sie den Befehlskomponisten aus, der PhpOffice/PHPExcel benötigt. In diesem Befehl wird Phpexcel in Ihrem Projekt heruntergeladen und installiert. der Phpexcel -Klasse. Anschließend können Sie die Eigenschaften der Excel -Datei wie Titel, Beschreibung und Autor festlegen. Danach können Sie der Excel -Datei Daten hinzufügen, indem Sie auf die Zellen zugreifen und deren Werte festlegen. Schließlich können Sie die Excel -Datei speichern, indem Sie einen Autor erstellen und die Speichermethode aufrufen. Datei Mit PHPExcel müssen Sie zuerst eine Datenreihe erstellen. Die Datenreihe repräsentiert die Daten, die im Diagramm angezeigt werden. Nach dem Erstellen der Datenreihe können Sie ein Diagramm erstellen und die Datenreihen hinzuzufügen. Dann können Sie die Eigenschaften des Diagramms wie den Titel und die Legende festlegen. Schließlich können Sie das Diagramm einem Arbeitsblatt hinzufügen, indem Sie die AddChart -Methode aufrufen. Sie müssen zuerst einen Leser erstellen. Der Leser ist dafür verantwortlich, die Excel -Datei zu öffnen und seinen Inhalt zu lesen. Nach dem Erstellen des Lesers können Sie die Excel -Datei laden, indem Sie die Lademethode aufrufen. Anschließend können Sie auf die Daten in der Excel -Datei zugreifen, indem Sie auf die Zellen zugreifen und ihre Werte abrufen. Vorhandene Excel -Datei mit PHPExcel müssen Sie zuerst einen Leser erstellen und die Excel -Datei laden. Dann können Sie auf die Zellen in der Excel -Datei zugreifen und ihre Werte festlegen. Nachdem Sie die Daten geändert haben, können Sie die Änderungen speichern, indem Sie einen Autor erstellen und die Speichernmethode aufrufen. Methoden zum Formatieren von Zellen in einer Excel -Datei. Sie können die Schriftart, Farbe, Ausrichtung, Rand und Zahlenformat einer Zelle festlegen. Sie können auch Zellen zusammenführen, die Breite und Höhe einer Zelle einstellen und Stile auf eine Zelle anwenden. kann aufgrund von Speicherbeschränkungen eine Herausforderung sein. PHPExcel bietet jedoch eine Zell -Caching -Funktion, mit der die Speicherverwendung reduziert werden kann. Durch Aktivieren von Zellen -Caching speichert PHPExcel Zelldaten in Cache anstelle von Speicher, was die Speicherverwendung erheblich verringern kann.

Wie kann ich mit PHPExcel ein PDF aus einer Excel -Datei erstellen? Um eine PDF zu generieren, müssen Sie einen Autor mit PDF -Typ erstellen und die Speichernmethode aufrufen. Beachten Sie, dass in Ihrem Projekt die entsprechende PDF -Rendering -Bibliothek installiert werden muss. . Um ein Bild hinzuzufügen, müssen Sie ein Zeichenobjekt erstellen, den Pfad des Bildes festlegen und die Koordinaten angeben, in denen das Bild im Arbeitsblatt platziert werden soll.

PHPExcel verwendet Ausnahmen, um Fehler zu behandeln. Wenn ein Fehler auftritt, macht PHPExcel eine Ausnahme. Sie können diese Ausnahmen mit einem Try-Catch-Block erfassen und angemessen behandeln. Auf diese Weise können Sie den Fluss Ihres Programms steuern und dem Benutzer aussagekräftige Fehlermeldungen angeben.

Das obige ist der detaillierte Inhalt vonGenerieren Sie Excel -Dateien und Diagramme mit PHPExcel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage