我正在尝试为我的一个项目设置symfony类加载器组件。当我尝试从Logger类创建一个新对象时,我得到了
Fatal error: Class 'MyPrefix\Log\Logger' not found in /usr/htdocs/sf/index.php on line 12
这是项目的结构
/
lib
MyPrefix
Log
Logger.php
vendor/
index.php
这是index.php文件的内容
<?php
require_once 'vendor/autoload.php';
use Symfony\Component\ClassLoader\ClassLoader;
$loader = new ClassLoader();
$loader->addPrefix('MyPrefix', __DIR__ .'/lib/MyPrefix/');
$loader->register();
use MyPrefix\Log\Logger;
$logger = new Logger();
我做错了什么?
答案 0 :(得分:1)
为命名空间添加新前缀时,应该提供父目录。
因此MyPrefix
为__DIR__ . '/lib/'