82 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
		
		
			
		
	
	
			82 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
|   | <?php | ||
|  | 
 | ||
|  | error_reporting(E_ALL); | ||
|  | set_time_limit(0); | ||
|  | 
 | ||
|  | date_default_timezone_set('Europe/London'); | ||
|  | 
 | ||
|  | ?>
 | ||
|  | <html> | ||
|  | <head> | ||
|  | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> | ||
|  | 
 | ||
|  | <title>PHPExcel Reader Example #10</title>
 | ||
|  | 
 | ||
|  | </head> | ||
|  | <body> | ||
|  | 
 | ||
|  | <h1>PHPExcel Reader Example #10</h1>
 | ||
|  | <h2>Simple File Reader Using a Configurable Read Filter</h2> | ||
|  | <?php | ||
|  | 
 | ||
|  | /** Include path **/ | ||
|  | set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/'); | ||
|  | 
 | ||
|  | /** PHPExcel_IOFactory */ | ||
|  | include 'PHPExcel/IOFactory.php'; | ||
|  | 
 | ||
|  | 
 | ||
|  | $inputFileType = 'Excel5'; | ||
|  | //	$inputFileType = 'Excel2007';
 | ||
|  | //	$inputFileType = 'Excel2003XML';
 | ||
|  | //	$inputFileType = 'OOCalc';
 | ||
|  | //	$inputFileType = 'Gnumeric';
 | ||
|  | $inputFileName = './sampleData/example1.xls'; | ||
|  | $sheetname = 'Data Sheet #3'; | ||
|  | 
 | ||
|  | 
 | ||
|  | class MyReadFilter implements PHPExcel_Reader_IReadFilter | ||
|  | { | ||
|  | 	private $_startRow = 0; | ||
|  | 
 | ||
|  | 	private $_endRow = 0; | ||
|  | 
 | ||
|  | 	private $_columns = array(); | ||
|  | 
 | ||
|  | 	public function __construct($startRow, $endRow, $columns) { | ||
|  | 		$this->_startRow	= $startRow; | ||
|  | 		$this->_endRow		= $endRow; | ||
|  | 		$this->_columns		= $columns; | ||
|  | 	} | ||
|  | 
 | ||
|  | 	public function readCell($column, $row, $worksheetName = '') { | ||
|  | 		if ($row >= $this->_startRow && $row <= $this->_endRow) { | ||
|  | 			if (in_array($column,$this->_columns)) { | ||
|  | 				return true; | ||
|  | 			} | ||
|  | 		} | ||
|  | 		return false; | ||
|  | 	} | ||
|  | } | ||
|  | 
 | ||
|  | $filterSubset = new MyReadFilter(9,15,range('G','K')); | ||
|  | 
 | ||
|  | 
 | ||
|  | echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory with a defined reader type of ',$inputFileType,'<br />'; | ||
|  | $objReader = PHPExcel_IOFactory::createReader($inputFileType); | ||
|  | echo 'Loading Sheet "',$sheetname,'" only<br />'; | ||
|  | $objReader->setLoadSheetsOnly($sheetname); | ||
|  | echo 'Loading Sheet using configurable filter<br />'; | ||
|  | $objReader->setReadFilter($filterSubset); | ||
|  | $objPHPExcel = $objReader->load($inputFileName); | ||
|  | 
 | ||
|  | 
 | ||
|  | echo '<hr />'; | ||
|  | 
 | ||
|  | $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true); | ||
|  | var_dump($sheetData); | ||
|  | 
 | ||
|  | 
 | ||
|  | ?>
 | ||
|  | <body> | ||
|  | </html> |