12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- <?php
- namespace PhpOffice\PhpSpreadsheet\Worksheet;
- use PhpOffice\PhpSpreadsheet\Exception as PhpSpreadsheetException;
- abstract class CellIterator implements \Iterator
- {
- /**
- * Worksheet to iterate.
- *
- * @var Worksheet
- */
- protected $worksheet;
- /**
- * Iterate only existing cells.
- *
- * @var bool
- */
- protected $onlyExistingCells = false;
- /**
- * Destructor.
- */
- public function __destruct()
- {
- unset($this->worksheet);
- }
- /**
- * Get loop only existing cells.
- *
- * @return bool
- */
- public function getIterateOnlyExistingCells()
- {
- return $this->onlyExistingCells;
- }
- /**
- * Validate start/end values for "IterateOnlyExistingCells" mode, and adjust if necessary.
- *
- * @throws PhpSpreadsheetException
- */
- abstract protected function adjustForExistingOnlyRange();
- /**
- * Set the iterator to loop only existing cells.
- *
- * @param bool $value
- *
- * @throws PhpSpreadsheetException
- */
- public function setIterateOnlyExistingCells($value)
- {
- $this->onlyExistingCells = (bool) $value;
- $this->adjustForExistingOnlyRange();
- }
- }
|