From 989c4505c0dd3016e6d7b616ddcc3e4bcd35fdc4 Mon Sep 17 00:00:00 2001 From: Karsten Nilsen Date: Fri, 23 Feb 2024 16:34:22 +0100 Subject: [PATCH] Upgrade to PHPSpreadsheet & replace depricated function & prevent null since HTMLHelper does not support it anymore --- composer.json | 2 +- src/Exporter/Excel/ExcelExporter.php | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index 19e258ee..3b05f82e 100644 --- a/composer.json +++ b/composer.json @@ -40,7 +40,7 @@ "friendsofphp/php-cs-fixer": "^v3.40.0", "mongodb/mongodb": "^1.17", "ocramius/package-versions": "^2.8", - "phpoffice/phpspreadsheet": "^1.29.0", + "phpoffice/phpspreadsheet": "^2.0", "phpstan/extension-installer": "^1.3.1", "phpstan/phpstan": "^1.10.55", "phpstan/phpstan-doctrine": "^1.3.54", diff --git a/src/Exporter/Excel/ExcelExporter.php b/src/Exporter/Excel/ExcelExporter.php index 0e0c8737..c99bc372 100644 --- a/src/Exporter/Excel/ExcelExporter.php +++ b/src/Exporter/Excel/ExcelExporter.php @@ -13,6 +13,7 @@ namespace Omines\DataTablesBundle\Exporter\Excel; use Omines\DataTablesBundle\Exporter\DataTableExporterInterface; +use PhpOffice\PhpSpreadsheet\Cell\CellAddress; use PhpOffice\PhpSpreadsheet\Cell\Coordinate; use PhpOffice\PhpSpreadsheet\Helper; use PhpOffice\PhpSpreadsheet\Spreadsheet; @@ -42,7 +43,7 @@ public function export(array $columnNames, \Iterator $data): \SplFileInfo foreach ($data as $row) { $colIndex = 1; foreach ($row as $value) { - $sheet->setCellValueByColumnAndRow($colIndex++, $rowIndex, $htmlHelper->toRichTextObject($value)); + $sheet->getCell(CellAddress::fromColumnAndRow($colIndex++, $rowIndex))->setValue($htmlHelper->toRichTextObject($value ?? '')); } ++$rowIndex; }