[ Index ]

PHP Cross Reference of moodle-2.8

title

Body

[close]

/lib/phpexcel/PHPExcel/ -> Autoloader.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
  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  PHPExcel_Autoloader::Register();
  29  //    As we always try to run the autoloader before anything else, we can use it to do a few
  30  //        simple checks and initialisations
  31  //PHPExcel_Shared_ZipStreamWrapper::register();
  32  // check mbstring.func_overload
  33  if (ini_get('mbstring.func_overload') & 2) {
  34      throw new PHPExcel_Exception('Multibyte function overloading in PHP must be disabled for string functions (2).');
  35  }
  36  PHPExcel_Shared_String::buildCharacterSets();
  37  
  38  
  39  /**
  40   * PHPExcel_Autoloader
  41   *
  42   * @category    PHPExcel
  43   * @package     PHPExcel
  44   * @copyright   Copyright (c) 2006 - 2014 PHPExcel (http://www.codeplex.com/PHPExcel)
  45   */
  46  class PHPExcel_Autoloader
  47  {
  48      /**
  49       * Register the Autoloader with SPL
  50       *
  51       */
  52      public static function Register() {
  53          if (function_exists('__autoload')) {
  54              //    Register any existing autoloader function with SPL, so we don't get any clashes
  55              spl_autoload_register('__autoload');
  56          }
  57          //    Register ourselves with SPL
  58          return spl_autoload_register(array('PHPExcel_Autoloader', 'Load'));
  59      }   //    function Register()
  60  
  61  
  62      /**
  63       * Autoload a class identified by name
  64       *
  65       * @param    string    $pClassName        Name of the object to load
  66       */
  67      public static function Load($pClassName){
  68          if ((class_exists($pClassName,FALSE)) || (strpos($pClassName, 'PHPExcel') !== 0)) {
  69              //    Either already loaded, or not a PHPExcel class request
  70              return FALSE;
  71          }
  72  
  73          $pClassFilePath = PHPEXCEL_ROOT .
  74                            str_replace('_',DIRECTORY_SEPARATOR,$pClassName) .
  75                            '.php';
  76  
  77          if ((file_exists($pClassFilePath) === FALSE) || (is_readable($pClassFilePath) === FALSE)) {
  78              //    Can't load
  79              return FALSE;
  80          }
  81  
  82          require($pClassFilePath);
  83      }   //    function Load()
  84  
  85  }


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