Створення файлів Excel на PHP

Електронні таблиці стали невід’ємною частиною зберігання, організації та аналізу даних. Оскільки в наші дні автоматизовані рішення все більше поширені, з’явилася тенденція створення та обробки документів Excel (XLS/XLSX), яка зростає величезними темпами. Відповідно до згаданого вище сценарію, у цій статті розповідається про те, як створювати та змінювати файли Excel у PHP.

Бібліотека PHP для створення файлів Excel — безкоштовне завантаження

Щоб створювати файли Excel і керувати ними у веб-додатках на основі PHP, ми будемо використовувати Aspose.Cells for PHP через Java. Це потужна та високошвидкісна бібліотека, яка надає широкий спектр функцій для автоматизації Excel. Ви можете завантажити пакет бібліотеки тут.

Використання

Нижче наведено передумови, які потрібно виконати, щоб використовувати Aspose.Cells for PHP через Java.

Після того, як ви виконаєте передумови, виконайте наведені нижче кроки, щоб виконати файл example.php для тестування.

  1. Помістіть файл Java.inc у кореневу папку пакета бібліотеки, який ви завантажили.
  2. Запустіть JavaBridge.jar за допомогою наведених нижче команд у командному рядку:
    • cd aspose.cells

    • %JAVAHOME%\bin\java -Djava.ext.dirs=lib -jar JavaBridge.jar SERVLETLOCAL:8080

  3. Запустіть example.php із кореневої папки бібліотеки за допомогою команди нижче:
    • php example.php

Прості кроки для створення файлу Excel у PHP

Нижче наведено кілька простих кроків для створення файлу Excel у PHP.

У наведеному нижче прикладі коду показано, як створити файл Excel XLSX у PHP.

require_once("http://localhost:8080/JavaBridge/java/Java.inc");
require_once("aspose.cells.php");

use aspose\cells;

// Створіть об'єкт класу робочої книги
$workbook = new cells\Workbook();

// Доступ до робочих аркушів
$sheets = $workbook->getWorksheets();

// Доступ до клітинок потрібного аркуша
$cells = $sheets->get(0)->getCells();

// Вставте значення в клітинку
$cells->get("A1")->putValue("Hello world!");

// Збережіть файл Excel
$workbook->save("output.xlsx", cells\SaveFormat::XLSX);

Змінити файл Excel у PHP

У попередньому розділі ми створили файл Excel з нуля. Тепер давайте відредагуємо наявний файл Excel і вставимо в нього дані.

Нижче наведено кроки для запису даних у файл XLSX за допомогою Aspose.Cells for PHP через Java.

У наведеному нижче прикладі коду показано, як змінити файл Excel у PHP.

// Створіть об’єкт класу книги для завантаження файлу Excel
$workbook = new cells\Workbook("workbook.xlsx");

// Доступ до робочих аркушів
$sheets = $workbook->getWorksheets();

// Доступ до клітинок потрібного аркуша
$cells = $sheets->get(0)->getCells();

// Вставте значення в клітинку
$cells->get("A1")->putValue("Hello world!");

// Збережіть файл Excel
$workbook->save("updated.xlsx");

PHP: Створення файлу Excel із діаграмами

Нижче наведено кроки для створення діаграм у файлі Excel за допомогою PHP.

  • Створіть новий файл Excel або завантажте наявний за допомогою класу Workbook.
  • Додайте дані до аркуша, якщо створено нову книгу.
  • Отримайте колекцію діаграм робочого аркуша за допомогою методу $worksheet->getCharts().
  • Додайте нову діаграму за допомогою методу $worksheet->getCharts()->add().
  • Отримайте щойно створену Chart із колекції.
  • Укажіть діапазон комірок, щоб встановити NSeries для діаграми.
  • Збережіть книгу як файл Excel .xlsx за допомогою методу $workbook->save(“output.xlsx”, cells\SaveFormat::XLSX).

У наведеному нижче прикладі коду показано, як створювати діаграми у файлах Excel у PHP.

// Завантажте файл Excel
$workbook = new Workbook("Book2.xlsx");

// Отримайте посилання на перший аркуш
$worksheets = $workbook->getWorksheets();
$sheet = $worksheets->get(0);

// Додайте значення зразка до клітинок
$cells = $sheet->getCells();
$cell = $cells->get("A1");
$cell->setValue(50);
$cell = $cells->get("A2");
$cell->setValue(100);
$cell = $cells->get("A3");
$cell->setValue(150);
$cell = $cells->get("B1");
$cell->setValue(4);
$cell = $cells->get("B2");
$cell->setValue(20);
$cell = $cells->get("B3");
$cell->setValue(50);

// Отримати діаграми на аркуші
$charts = $sheet->getCharts();

// Додайте діаграму до аркуша
$chartIndex = $charts->add(ChartType::PYRAMID, 5, 0, 15, 5);
$chart = $charts->get($chartIndex);

// Додайте NSeries (джерело даних діаграми) до діаграми, починаючи з "A1"
// комірка до "B3"
$serieses = $chart->getNSeries();
$serieses->add("A1:B3", true);

// Напишіть файл Excel 
$workbook.save("Excel_with_Chart.xlsx");

Додайте зведену таблицю у файл Excel у PHP

Зведені таблиці в робочих аркушах Excel використовуються для додавання фільтрів до даних, обчислення підсумків, узагальнення даних тощо. Зведені таблиці можна створювати, використовуючи діапазон клітинок на аркуші. Нижче наведено кроки для створення зведеної таблиці на аркуші Excel за допомогою PHP.

  • Створіть новий файл Excel або завантажте наявний за допомогою класу Workbook.
  • Вставте дані в робочий аркуш.
  • Отримайте доступ до колекції зведених таблиць за допомогою методу $worksheet->getPivotTables().
  • Додайте нову зведену таблицю на аркуш за допомогою методу $worksheet->getPivotTables()->add().
  • Надати дані у зведену таблицю.
  • Збережіть книгу за допомогою методу $workbook->save(“output.xlsx”, cell\SaveFormat::XLSX).

У наведеному нижче прикладі коду показано, як створити зведену таблицю в Excel за допомогою PHP.

// Завантажте документ, який потрібно конвертувати
$workbook = new Workbook("Book2.xlsx");

// Отримайте посилання на перший аркуш
$worksheets = $workbook->getWorksheets();
$sheet = $worksheets->get(0);

// Додайте значення зразка до клітинок
$cells = $sheet->getCells();
$cell->setValue("Sport");
$cell = $cells->get("B1");
$cell->setValue("Quarter");
$cell = $cells->get("C1");
$cell->setValue("Sales");

$cell = $cells->get("A2");
$cell->setValue("Golf");
$cell = $cells->get("A3");
$cell->setValue("Golf");
$cell = $cells->get("A4");
$cell->setValue("Tennis");
$cell = $cells->get("A5");
$cell->setValue("Tennis");
$cell = $cells->get("A6");
$cell->setValue("Tennis");
$cell = $cells->get("A7");
$cell->setValue("Tennis");
$cell = $cells->get("A8");
$cell->setValue("Golf");

$cell = $cells->get("B2");
$cell->setValue("Qtr3");
$cell = $cells->get("B3");
$cell->setValue("Qtr4");
$cell = $cells->get("B4");
$cell->setValue("Qtr3");
$cell = $cells->get("B5");
$cell->setValue("Qtr4");
$cell = $cells->get("B6");
$cell->setValue("Qtr3");
$cell = $cells->get("B7");
$cell->setValue("Qtr4");
$cell = $cells->get("B8");
$cell->setValue("Qtr3");

$cell = $cells->get("C2");
$cell->setValue(1500);
$cell = $cells->get("C3");
$cell->setValue(2000);
$cell = $cells->get("C4");
$cell->setValue(600);
$cell = $cells->get("C5");
$cell->setValue(1500);
$cell = $cells->get("C6");
$cell->setValue(4070);
$cell = $cells->get("C7");
$cell->setValue(5000);
$cell = $cells->get("C8");
$cell->setValue(6430);

// Отримати зведені таблиці
$pivotTables = $sheet->getPivotTables();

// Додайте зведену таблицю до аркуша
$index = $pivotTables->add("=A1:C8", "E3", "PivotTable2");

// Доступ до екземпляра щойно доданої зведеної таблиці
$pivotTable = $pivotTables->get($index);

// Скасувати показ загальних підсумків для рядків
$pivotTable->setRowGrand(false);

// Перетягніть перше поле в область рядка
$pivotTable->addFieldToArea(PivotFieldType::ROW, 0);

// Перетягніть друге поле в область стовпця
$pivotTable->addFieldToArea(PivotFieldType::COLUMN, 1);

// Перетягніть третє поле в область даних
$pivotTable->addFieldToArea(PivotFieldType::DATA, 2);

// Напишіть файл Excel
$workbook.save("Excel_with_Table.xlsx");

PHP-бібліотека Aspose для створення файлів Excel – отримайте безкоштовну ліцензію

Ви можете безкоштовно створювати файли Excel у PHP без обмежень оцінки за допомогою безкоштовної тимчасової ліцензії.

Висновок

У цій статті ви дізналися, як створювати файли Excel XLS або XLSX з нуля в PHP. Крім того, ви бачили, як записати дані в існуючий файл Excel і створити файли Excel із діаграмами або таблицями на PHP. Ви можете дізнатися більше про бібліотеку PHP Excel за допомогою документації. Якщо у вас виникнуть запитання, не соромтеся повідомити нас через наш форум.

Дивись також