2013-12-12 51 views
2

我想为我的一个项目安装symfony类加载程序组件。当我尝试从Logger类创建新的对象,我得到Symfony自动加载器组件不会加载我的类

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

它不应该是'使用MyPrefix \记录仪\ Logger'? –

+0

@Lauri Elias的目录名称有误。我已经更新了这个问题。 – DRON

回答

1

为命名空间添加新前缀时,应该给父目录。

所以对于MyPrefix__DIR__ . '/lib/'