From 5ae74145dead45b956ad65d3efacdbf39d921c0f Mon Sep 17 00:00:00 2001 From: MarkBaker Date: Thu, 5 May 2022 10:05:32 +0200 Subject: [PATCH] Performance Experiment for the String Table, to avoid creating empty cells; should also be slightly faster --- src/PhpSpreadsheet/Writer/Xlsx/StringTable.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/PhpSpreadsheet/Writer/Xlsx/StringTable.php b/src/PhpSpreadsheet/Writer/Xlsx/StringTable.php index f9a2e711..a64e0d68 100644 --- a/src/PhpSpreadsheet/Writer/Xlsx/StringTable.php +++ b/src/PhpSpreadsheet/Writer/Xlsx/StringTable.php @@ -2,6 +2,7 @@ namespace PhpOffice\PhpSpreadsheet\Writer\Xlsx; +use PhpOffice\PhpSpreadsheet\Cell\Cell; use PhpOffice\PhpSpreadsheet\Cell\DataType; use PhpOffice\PhpSpreadsheet\RichText\RichText; use PhpOffice\PhpSpreadsheet\RichText\Run; @@ -35,8 +36,9 @@ class StringTable extends WriterPart $aFlippedStringTable = $this->flipStringTable($aStringTable); // Loop through cells - foreach ($worksheet->getCoordinates() as $coordinate) { - $cell = $worksheet->getCell($coordinate); + foreach ($worksheet->getCellCollection()->getCoordinates() as $coordinate) { + /** @var Cell $cell */ + $cell = $worksheet->getCellCollection()->get($coordinate); $cellValue = $cell->getValue(); if ( !is_object($cellValue) &&