[ Index ]

PHP Cross Reference of moodle-2.8

title

Body

[close]

/lib/phpexcel/PHPExcel/Reader/ -> Abstract.php (source)

   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  }


Generated: Fri Nov 28 20:29:05 2014 Cross-referenced by PHPXref 0.7.1