X7ROOT File Manager
Current Path:
/home/cbholdings/pasukulu/lib/openspout/src/Reader/Common/Manager
home
/
cbholdings
/
pasukulu
/
lib
/
openspout
/
src
/
Reader
/
Common
/
Manager
/
📁
..
📄
RowManager.php
(1.27 KB)
Editing: RowManager.php
<?php declare(strict_types=1); namespace OpenSpout\Reader\Common\Manager; use OpenSpout\Common\Entity\Cell; use OpenSpout\Common\Entity\Row; /** * @internal */ final class RowManager { /** * Fills the missing indexes of a row with empty cells. */ public function fillMissingIndexesWithEmptyCells(Row $row): void { $numCells = $row->getNumCells(); if (0 === $numCells) { return; } $rowCells = $row->getCells(); $maxCellIndex = $numCells; /** * If the row has empty cells, calling "setCellAtIndex" will add the cell * but in the wrong place (the new cell is added at the end of the array). * Therefore, we need to sort the array using keys to have proper order. * * @see https://github.com/box/spout/issues/740 */ $needsSorting = false; for ($cellIndex = 0; $cellIndex < $maxCellIndex; ++$cellIndex) { if (!isset($rowCells[$cellIndex])) { $row->setCellAtIndex(Cell::fromValue(''), $cellIndex); $needsSorting = true; } } if ($needsSorting) { $rowCells = $row->getCells(); ksort($rowCells); $row->setCells($rowCells); } } }
Upload File
Create Folder