php、laravel、log4php: Class 'Apache\Log4php\Hierarchy' 未找到错误

php, laravel, log4php: Class 'Apache\Log4php\Hierarchy' not found error

我是 php 的新手,我正在使用 log4php 和 laravel。 我的项目结构是

->Root
        ->Laravel
                ->app
                    ->folderx
                            ->abc.php
        ->otherfolders
        .
        .
        ->vendor
        ->composer.json (contains log4php and laravel)
        ->logconfig.xml

我正在尝试从 abc.php、

内部初始化记录器
Logger::configure('../../../logconfig.xml');

但它给出了错误消息

Class 'Apache\Log4php\Hierarchy' not found

我确认 class Hierarchy.php 存在于根文件夹下的 vendor/apache/log4php/src 中。另外,如果我打开 Logger.php 并转到初始化 Hierarchy 的那一行,然后在 Hierarchy 上按 ctrl+click(在 eclipse 中),它会带我到 Hierarchy.php。

我想弄清楚为什么 php 找不到 class。 任何 help/suggestions 将不胜感激。

谢谢

该错误消息表明您的 PHP 正在寻找命名空间 class。 Log4PHP 直到现在才发布带有命名空间的版本(直到 2.3.0 版),所以这绝对很奇怪。

如果不小心使用了3.0版本的开发分支,我目前肯定建议不要使用。它在去年几乎没有得到任何重要的承诺,应该被视为正在进行的工作(不幸的是进展非常缓慢)。