Размер файла: 1.13Kb
- <?php
-
- /*
- * This file is part of Twig.
- *
- * (c) 2009 Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
- /**
- * Autoloads Twig classes.
- *
- * @author Fabien Potencier <fabien@symfony.com>
- */
- class Twig_Autoloader
- {
- /**
- * Registers Twig_Autoloader as an SPL autoloader.
- *
- * @param Boolean $prepend Whether to prepend the autoloader or not.
- */
- public static function register($prepend = false)
- {
- if (version_compare(phpversion(), '5.3.0', '>=')) {
- spl_autoload_register(array(new self, 'autoload'), true, $prepend);
- } else {
- spl_autoload_register(array(new self, 'autoload'));
- }
- }
-
- /**
- * Handles autoloading of classes.
- *
- * @param string $class A class name.
- */
- public static function autoload($class)
- {
- if (0 !== strpos($class, 'Twig')) {
- return;
- }
-
- if (is_file($file = dirname(__FILE__).'/../'.str_replace(array('_', "\0"), array('/', ''), $class).'.php')) {
- require $file;
- }
- }
- }