PSR-0自动加载器约定是否要求使用映射到目录结构的命名空间?
function autoload($className)
{
$className = ltrim($className, '\\');
$fileName = '';
$namespace = '';
if ($lastNsPos = strrpos($className, '\\')) {
$namespace = substr($className, 0, $lastNsPos);
$className = substr($className, $lastNsPos + 1);
$fileName = str_replace('\\', DIRECTORY_SEPARATOR, $namespace) . DIRECTORY_SEPARATOR;
}
$fileName .= str_replace('_', DIRECTORY_SEPARATOR, $className) . '.php';
require $fileName;
}
答案 0 :(得分:1)
PSR-0需要它。
从文件系统加载时,每个命名空间分隔符都会转换为DIRECTORY_SEPARATOR。
和
从文件系统加载时,完全限定的命名空间和类后缀为.php。
https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md