public function init() { $reader = \PHPExcel_IOFactory::createReaderForFile($this->filePath); /* @var $reader \PHPExcel_Reader_IReader */ $reader->setReadDataOnly(true); // Load only 1st sheet if (method_exists($reader, 'listWorksheetNames')) { $sheets = $reader->listWorksheetNames($this->filePath); $reader->setLoadSheetsOnly(array($sheets[0])); } $this->reader = $reader; $this->excel = $this->reader->load($this->filePath); $this->excel->setActiveSheetIndex(0); $this->sheet = $this->excel->getActiveSheet(); if ($this->useLabels) { if ($this->labels === null) { $this->labels = $this->readLabelsRow(); $this->ignoredRowsCount++; // To pass labels row when reading data } $this->colsCount = count($this->labels); } if ($this->colsCount === null) { throw new Exception(__CLASS__ . '->colsCount not set.'); } $this->filter = new Filter($this->colsCount); $reader->setReadFilter($this->filter); }