Spout
PHP-Bibliothek für ODS-, XLSX- und CSV-Dateien
Open-Source-PHP-Bibliothek zum Erstellen, Lesen und Bearbeiten von Tabellenkalkulationen aus Excel® (XLSX, CSV) und OpenOffice™ (ODS).
Was ist Spout?
Spout ist eine Open-Source-PHP-Bibliothek, die Softwareentwicklern bei der Bearbeitung von Tabellenkalkulationen wie dem Lesen und Schreiben von ODS-, XLSX- und CSV-Dateien hilft. Mit Spout können Entwickler Tabellenkalkulationen mit Zellen-, Zeilen- und Rahmengestaltung von Grund auf erstellen sowie vorhandene Dateien zur Bearbeitung laden.
Spout ist entwicklerfreundlich, da es eine einfache und integrierte API zum Lesen und Erstellen verschiedener Arten von Tabellenkalkulationen bietet. Es ermöglicht auch den Wechsel von einem Tabellenkalkulationstyp zu einem anderen mit minimalen Änderungen am Code. Es ist in der Lage, sowohl kleine als auch sehr große Tabellenkalkulationsdateien zu verarbeiten, während die Speicherauslastung sehr niedrig gehalten wird. Es benötigt nur 3 MB Speicher für die Verarbeitung von Tabellenkalkulationsdateien.
So installieren Sie die Spout-PHP-Bibliothek
Spout benötigt PHP Version 7.1 oder höher. Sobald die Voraussetzung erfüllt ist, installieren Sie Spout von Composer.
Installieren Sie Spout von Composer
$ composer require box/spout
PHP-Bibliothek zum Lesen und Schreiben von ODS, XLSX und CSV
Spout ermöglicht es Softwareentwicklern, Tabellenkalkulationsdateien in drei gängigen Formaten von Grund auf neu zu erstellen. Während des Lesens errät Spout den Typ des Tabellenkalkulationsprogramms basierend auf der Dateierweiterung. Falls die Erweiterung nicht Standard ist, kann direkt ein spezifischer Leser erstellt werden.
Lesen Sie ODS über PHP
- Erstellen Sie einen Reader für das ODS-Dateiformat
- Übergeben Sie den ODS-Dateipfad an die Load-Methode, um ihn zu lesen
- Über ODS-Arbeitsblätter iterieren mit getSheetIterator()
- Über Arbeitsblattzeilen iterieren mit getRowIterator()
- Abrufen von Zellen einer ODS-Zeile zum Lesen oder Schreiben
Lesen Sie ODS über Spout - PHP-Excel-Bibliothek
use Box\Spout\Reader\Common\Creator\ReaderEntityFactory;
$reader = ReaderEntityFactory::createODSReader('/path/to/file.ods');
$reader->open($filePath);
foreach ($reader->getSheetIterator() as $sheet) {
foreach ($sheet->getRowIterator() as $row) {
// do stuff with the row
$cells = $row->getCells();
...
}
}
$reader->close();
Fügen Sie Daten über PHP zu einer vorhandenen Tabelle hinzu
Spout gibt dem Entwickler die Möglichkeit, eine vorhandene Tabelle zu aktualisieren, indem er ihr Daten hinzufügt. Es ist eine sehr gängige Praxis, neue Daten zu einer bestehenden Tabelle hinzuzufügen. Die Spout-API behält die vollständige Tabellendarstellung nicht im Speicher, um Speicherprobleme beim Arbeiten mit großen Tabellenkalkulationen zu vermeiden. Um eine Tabelle zu ändern, erstellen Sie eine neue Instanz, die der vorhandenen ähnlich ist, und fügen Sie die erforderlichen Daten zur neuen Tabelle hinzu.
Lesen von Daten aus einem bestimmten Blatt
Die Spout-API ermöglicht es PHP-Entwicklern, auf Daten aus einem bestimmten Blatt innerhalb einer Tabelle zuzugreifen und diese zu lesen. Normalerweise enthält eine Tabelle mehrere Arbeitsblätter. Wenn ein Benutzer daran interessiert ist, Daten von nur einem Blatt zu lesen und die anderen Blätter zu überspringen. Die Benutzer müssen nur den Namen und die Position der Tabelle kennen.