subject); } /** * 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 \PhpOffice\PhpSpreadsheet\Exception */ abstract protected function adjustForExistingOnlyRange(); /** * Set the iterator to loop only existing cells. * * @param bool $value * * @throws \PhpOffice\PhpSpreadsheet\Exception */ public function setIterateOnlyExistingCells($value = true) { $this->onlyExistingCells = (bool) $value; $this->adjustForExistingOnlyRange(); } }