![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/inventory.corals.io/vendor/box/spout/src/Spout/Writer/ODS/Manager/ |
<?php namespace Box\Spout\Writer\ODS\Manager; use Box\Spout\Writer\Common\Entity\Sheet; use Box\Spout\Writer\Common\Manager\WorkbookManagerAbstract; use Box\Spout\Writer\ODS\Helper\FileSystemHelper; use Box\Spout\Writer\ODS\Manager\Style\StyleManager; /** * Class WorkbookManager * ODS workbook manager, providing the interfaces to work with workbook. */ class WorkbookManager extends WorkbookManagerAbstract { /** * Maximum number of rows a ODS sheet can contain * @see https://ask.libreoffice.org/en/question/8631/upper-limit-to-number-of-rows-in-calc/ */ protected static $maxRowsPerWorksheet = 1048576; /** @var WorksheetManager Object used to manage worksheets */ protected $worksheetManager; /** @var FileSystemHelper Helper to perform file system operations */ protected $fileSystemHelper; /** @var StyleManager Manages styles */ protected $styleManager; /** * @return int Maximum number of rows/columns a sheet can contain */ protected function getMaxRowsPerWorksheet() { return self::$maxRowsPerWorksheet; } /** * @param Sheet $sheet * @return string The file path where the data for the given sheet will be stored */ public function getWorksheetFilePath(Sheet $sheet) { $sheetsContentTempFolder = $this->fileSystemHelper->getSheetsContentTempFolder(); return $sheetsContentTempFolder . '/sheet' . $sheet->getIndex() . '.xml'; } /** * Writes all the necessary files to disk and zip them together to create the final file. * * @param resource $finalFilePointer Pointer to the spreadsheet that will be created * @return void */ protected function writeAllFilesToDiskAndZipThem($finalFilePointer) { $worksheets = $this->getWorksheets(); $numWorksheets = \count($worksheets); $this->fileSystemHelper ->createContentFile($this->worksheetManager, $this->styleManager, $worksheets) ->deleteWorksheetTempFolder() ->createStylesFile($this->styleManager, $numWorksheets) ->zipRootFolderAndCopyToStream($finalFilePointer); } }