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>
							 |