equal
  deleted
  inserted
  replaced
  
    
    
|         |      1 <?php | 
|         |      2  | 
|         |      3 /* | 
|         |      4  * This file is part of Twig. | 
|         |      5  * | 
|         |      6  * (c) 2009 Fabien Potencier | 
|         |      7  * | 
|         |      8  * For the full copyright and license information, please view the LICENSE | 
|         |      9  * file that was distributed with this source code. | 
|         |     10  */ | 
|         |     11  | 
|         |     12 /** | 
|         |     13  * Autoloads Twig classes. | 
|         |     14  * | 
|         |     15  * @package twig | 
|         |     16  * @author  Fabien Potencier <fabien@symfony.com> | 
|         |     17  */ | 
|         |     18 class Twig_Autoloader | 
|         |     19 { | 
|         |     20     /** | 
|         |     21      * Registers Twig_Autoloader as an SPL autoloader. | 
|         |     22      */ | 
|         |     23     static public function register() | 
|         |     24     { | 
|         |     25         ini_set('unserialize_callback_func', 'spl_autoload_call'); | 
|         |     26         spl_autoload_register(array(new self, 'autoload')); | 
|         |     27     } | 
|         |     28  | 
|         |     29     /** | 
|         |     30      * Handles autoloading of classes. | 
|         |     31      * | 
|         |     32      * @param  string  $class  A class name. | 
|         |     33      * | 
|         |     34      * @return boolean Returns true if the class has been loaded | 
|         |     35      */ | 
|         |     36     static public function autoload($class) | 
|         |     37     { | 
|         |     38         if (0 !== strpos($class, 'Twig')) { | 
|         |     39             return; | 
|         |     40         } | 
|         |     41  | 
|         |     42         if (is_file($file = dirname(__FILE__).'/../'.str_replace(array('_', "\0"), array('/', ''), $class).'.php')) { | 
|         |     43             require $file; | 
|         |     44         } | 
|         |     45     } | 
|         |     46 } |