| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- <?php
- namespace OAuth2;
- /**
- * Autoloads OAuth2 classes
- *
- * @author Brent Shaffer <bshafs at gmail dot com>
- * @license MIT License
- */
- class Autoloader
- {
- /**
- * @var string
- */
- private $dir;
- /**
- * @param string $dir
- */
- public function __construct($dir = null)
- {
- if (is_null($dir)) {
- $dir = dirname(__FILE__).'/..';
- }
- $this->dir = $dir;
- }
- /**
- * Registers OAuth2\Autoloader as an SPL autoloader.
- */
- public static function register($dir = null)
- {
- ini_set('unserialize_callback_func', 'spl_autoload_call');
- spl_autoload_register(array(new self($dir), 'autoload'));
- }
- /**
- * Handles autoloading of classes.
- *
- * @param string $class - A class name.
- * @return boolean - Returns true if the class has been loaded
- */
- public function autoload($class)
- {
- if (0 !== strpos($class, 'OAuth2')) {
- return;
- }
- if (file_exists($file = $this->dir.'/'.str_replace('\\', '/', $class).'.php')) {
- require $file;
- }
- }
- }
|