[ Index ] |
PHP Cross Reference of moodle-2.8 |
[Summary view] [Print] [Text view]
1 <?php 2 /** 3 * PHPExcel 4 * 5 * Copyright (c) 2006 - 2014 PHPExcel 6 * 7 * This library is free software; you can redistribute it and/or 8 * modify it under the terms of the GNU Lesser General Public 9 * License as published by the Free Software Foundation; either 10 * version 2.1 of the License, or (at your option) any later version. 11 * 12 * This library is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 * Lesser General Public License for more details. 16 * 17 * You should have received a copy of the GNU Lesser General Public 18 * License along with this library; if not, write to the Free Software 19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 20 * 21 * @category PHPExcel 22 * @package PHPExcel_Reader 23 * @copyright Copyright (c) 2006 - 2014 PHPExcel (http://www.codeplex.com/PHPExcel) 24 * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL 25 * @version ##VERSION##, ##DATE## 26 */ 27 28 29 /** 30 * PHPExcel_Reader_Abstract 31 * 32 * @category PHPExcel 33 * @package PHPExcel_Reader 34 * @copyright Copyright (c) 2006 - 2014 PHPExcel (http://www.codeplex.com/PHPExcel) 35 */ 36 abstract class PHPExcel_Reader_Abstract implements PHPExcel_Reader_IReader 37 { 38 /** 39 * Read data only? 40 * Identifies whether the Reader should only read data values for cells, and ignore any formatting information; 41 * or whether it should read both data and formatting 42 * 43 * @var boolean 44 */ 45 protected $_readDataOnly = FALSE; 46 47 /** 48 * Read charts that are defined in the workbook? 49 * Identifies whether the Reader should read the definitions for any charts that exist in the workbook; 50 * 51 * @var boolean 52 */ 53 protected $_includeCharts = FALSE; 54 55 /** 56 * Restrict which sheets should be loaded? 57 * This property holds an array of worksheet names to be loaded. If null, then all worksheets will be loaded. 58 * 59 * @var array of string 60 */ 61 protected $_loadSheetsOnly = NULL; 62 63 /** 64 * PHPExcel_Reader_IReadFilter instance 65 * 66 * @var PHPExcel_Reader_IReadFilter 67 */ 68 protected $_readFilter = NULL; 69 70 protected $_fileHandle = NULL; 71 72 73 /** 74 * Read data only? 75 * If this is true, then the Reader will only read data values for cells, it will not read any formatting information. 76 * If false (the default) it will read data and formatting. 77 * 78 * @return boolean 79 */ 80 public function getReadDataOnly() { 81 return $this->_readDataOnly; 82 } 83 84 /** 85 * Set read data only 86 * Set to true, to advise the Reader only to read data values for cells, and to ignore any formatting information. 87 * Set to false (the default) to advise the Reader to read both data and formatting for cells. 88 * 89 * @param boolean $pValue 90 * 91 * @return PHPExcel_Reader_IReader 92 */ 93 public function setReadDataOnly($pValue = FALSE) { 94 $this->_readDataOnly = $pValue; 95 return $this; 96 } 97 98 /** 99 * Read charts in workbook? 100 * If this is true, then the Reader will include any charts that exist in the workbook. 101 * Note that a ReadDataOnly value of false overrides, and charts won't be read regardless of the IncludeCharts value. 102 * If false (the default) it will ignore any charts defined in the workbook file. 103 * 104 * @return boolean 105 */ 106 public function getIncludeCharts() { 107 return $this->_includeCharts; 108 } 109 110 /** 111 * Set read charts in workbook 112 * Set to true, to advise the Reader to include any charts that exist in the workbook. 113 * Note that a ReadDataOnly value of false overrides, and charts won't be read regardless of the IncludeCharts value. 114 * Set to false (the default) to discard charts. 115 * 116 * @param boolean $pValue 117 * 118 * @return PHPExcel_Reader_IReader 119 */ 120 public function setIncludeCharts($pValue = FALSE) { 121 $this->_includeCharts = (boolean) $pValue; 122 return $this; 123 } 124 125 /** 126 * Get which sheets to load 127 * Returns either an array of worksheet names (the list of worksheets that should be loaded), or a null 128 * indicating that all worksheets in the workbook should be loaded. 129 * 130 * @return mixed 131 */ 132 public function getLoadSheetsOnly() 133 { 134 return $this->_loadSheetsOnly; 135 } 136 137 /** 138 * Set which sheets to load 139 * 140 * @param mixed $value 141 * This should be either an array of worksheet names to be loaded, or a string containing a single worksheet name. 142 * If NULL, then it tells the Reader to read all worksheets in the workbook 143 * 144 * @return PHPExcel_Reader_IReader 145 */ 146 public function setLoadSheetsOnly($value = NULL) 147 { 148 $this->_loadSheetsOnly = is_array($value) ? 149 $value : array($value); 150 return $this; 151 } 152 153 /** 154 * Set all sheets to load 155 * Tells the Reader to load all worksheets from the workbook. 156 * 157 * @return PHPExcel_Reader_IReader 158 */ 159 public function setLoadAllSheets() 160 { 161 $this->_loadSheetsOnly = NULL; 162 return $this; 163 } 164 165 /** 166 * Read filter 167 * 168 * @return PHPExcel_Reader_IReadFilter 169 */ 170 public function getReadFilter() { 171 return $this->_readFilter; 172 } 173 174 /** 175 * Set read filter 176 * 177 * @param PHPExcel_Reader_IReadFilter $pValue 178 * @return PHPExcel_Reader_IReader 179 */ 180 public function setReadFilter(PHPExcel_Reader_IReadFilter $pValue) { 181 $this->_readFilter = $pValue; 182 return $this; 183 } 184 185 /** 186 * Open file for reading 187 * 188 * @param string $pFilename 189 * @throws PHPExcel_Reader_Exception 190 * @return resource 191 */ 192 protected function _openFile($pFilename) 193 { 194 // Check if file exists 195 if (!file_exists($pFilename) || !is_readable($pFilename)) { 196 throw new PHPExcel_Reader_Exception("Could not open " . $pFilename . " for reading! File does not exist."); 197 } 198 199 // Open file 200 $this->_fileHandle = fopen($pFilename, 'r'); 201 if ($this->_fileHandle === FALSE) { 202 throw new PHPExcel_Reader_Exception("Could not open file " . $pFilename . " for reading."); 203 } 204 } 205 206 /** 207 * Can the current PHPExcel_Reader_IReader read the file? 208 * 209 * @param string $pFilename 210 * @return boolean 211 * @throws PHPExcel_Reader_Exception 212 */ 213 public function canRead($pFilename) 214 { 215 // Check if file exists 216 try { 217 $this->_openFile($pFilename); 218 } catch (Exception $e) { 219 return FALSE; 220 } 221 222 $readable = $this->_isValidFormat(); 223 fclose ($this->_fileHandle); 224 return $readable; 225 } 226 227 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Fri Nov 28 20:29:05 2014 | Cross-referenced by PHPXref 0.7.1 |