AutorÃa | Ultima modificación | Ver Log |
<?phpdeclare(strict_types=1);namespace OpenSpout\Writer\ODS\Manager;use OpenSpout\Writer\Common\Entity\Workbook;use OpenSpout\Writer\Common\Manager\AbstractWorkbookManager;use OpenSpout\Writer\Common\Manager\Style\StyleMerger;use OpenSpout\Writer\ODS\Helper\FileSystemHelper;use OpenSpout\Writer\ODS\Manager\Style\StyleManager;use OpenSpout\Writer\ODS\Options;/*** @internal** @property WorksheetManager $worksheetManager* @property FileSystemHelper $fileSystemHelper* @property StyleManager $styleManager*/final class WorkbookManager extends AbstractWorkbookManager{/*** 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/*/private static int $maxRowsPerWorksheet = 1048576;public function __construct(Workbook $workbook,Options $options,WorksheetManager $worksheetManager,StyleManager $styleManager,StyleMerger $styleMerger,FileSystemHelper $fileSystemHelper) {parent::__construct($workbook,$options,$worksheetManager,$styleManager,$styleMerger,$fileSystemHelper);}/*** @return int Maximum number of rows/columns a sheet can contain*/protected function getMaxRowsPerWorksheet(): int{return self::$maxRowsPerWorksheet;}/*** 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*/protected function writeAllFilesToDiskAndZipThem($finalFilePointer): void{$worksheets = $this->getWorksheets();$numWorksheets = \count($worksheets);$this->fileSystemHelper->createContentFile($this->worksheetManager, $this->styleManager, $worksheets)->deleteWorksheetTempFolder()->createStylesFile($this->styleManager, $numWorksheets)->zipRootFolderAndCopyToStream($finalFilePointer);}}