Spout
Бібліотека PHP для файлів ODS, XLSX і CSV
Бібліотека PHP з відкритим кодом для створення, читання та керування електронними таблицями з Excel® (XLSX, CSV) і OpenOffice™ (ODS).
Що таке Spout?
Spout — це бібліотека PHP з відкритим вихідним кодом, яка допомагає розробникам програмного забезпечення виконувати завдання роботи з електронними таблицями, наприклад читати та записувати файли ODS, XLSX і CSV. За допомогою Spout розробники можуть створювати електронні таблиці з нуля зі стилями клітинок, рядків і меж, а також завантажувати наявні файли для редагування.
Spout зручний для розробників, оскільки забезпечує простий інтегрований API для читання та створення різних типів електронних таблиць. Це також дозволяє перемикатися з одного типу електронної таблиці на інший з мінімальними змінами коду. Він здатний обробляти як малі, так і дуже великі файли електронних таблиць, зберігаючи використання пам’яті дуже низьким. Для обробки будь-якого файлу електронної таблиці потрібно лише 3 МБ пам’яті.
Як встановити бібліотеку Spout PHP
Для Spout потрібен PHP версії 7.1 або новішої. Коли передумови буде виконано, установіть Spout із Composer.
Встановіть Spout з Composer
$ composer require box/spout
Бібліотека PHP для читання та запису ODS, XLSX і CSV
Spout дозволяє розробникам програмного забезпечення створювати файли електронних таблиць з нуля в 3 популярних форматах. Під час читання Spout вгадує тип читача електронних таблиць на основі розширення файлу. Якщо розширення нестандартне, можна створити окремий зчитувач безпосередньо.
Читайте ODS через PHP
- Створіть засіб читання для формату ODS
- Передайте шлях файлу ODS до методу завантаження, щоб прочитати його
- Ітерація робочих аркушів ODS за допомогою getSheetIterator()
- Перебір рядків аркуша за допомогою getRowIterator()
- Отримати клітинки рядка ODS для читання або запису
Читайте ODS через Spout - PHP Excel Library
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();
Додайте дані до наявної електронної таблиці через PHP
Spout дає розробнику можливість оновлювати наявну електронну таблицю, додаючи до неї дані. Дуже поширеною практикою є додавання нових даних до існуючої електронної таблиці. Spout API не зберігає повне представлення електронної таблиці в пам’яті, щоб уникнути проблем із пам’яттю під час роботи з великими електронними таблицями. Щоб змінити електронну таблицю, створіть новий екземпляр, подібний до існуючого, і додайте необхідні дані до нової електронної таблиці.
Читання даних із певного аркуша
Spout API дозволяє розробникам PHP отримувати доступ і читати дані з певного аркуша в електронній таблиці. Зазвичай електронна таблиця містить кілька робочих аркушів. Якщо користувач зацікавлений прочитати дані лише з одного аркуша та пропустити інші аркуші. Користувачам просто потрібно знати назву та положення електронної таблиці.