Files
predis/lib/Predis/Autoloader.php
T
Daniele Alessandri b4d5b19b30 Fix a few oversights.
2011-10-18 16:19:12 +02:00

38 lines
834 B
PHP

<?php
namespace Predis;
class Autoloader
{
private $_baseDir;
private $_prefix;
public function __construct($baseDirectory = null)
{
$this->_baseDir = $baseDirectory ?: dirname(__FILE__);
$this->_prefix = __NAMESPACE__ . '\\';
}
public static function register()
{
spl_autoload_register(array(new self, 'autoload'));
}
public function autoload($className)
{
if (0 !== strpos($className, $this->_prefix)) {
return;
}
$relativeClassName = substr($className, strlen($this->_prefix));
$classNameParts = explode('\\', $relativeClassName);
$path = $this->_baseDir .
DIRECTORY_SEPARATOR .
implode(DIRECTORY_SEPARATOR, $classNameParts) .
'.php';
require_once $path;
}
}