Zend framework Zend Bootstrap new plugin=致命错误

Zend framework Zend Bootstrap new plugin=致命错误,zend-framework,Zend Framework,我陷入困境,正在寻找解决方案来修复以下错误: 致命错误:在第18行的/../application/Bootstrap.php中找不到类“Plugin\u AccessCheck” 我正在尝试注册一个新插件。我的代码是: protected function _initAutoLoad() { $modelLoader = new Zend_Application_Module_Autoloader(array( 'namespac

我陷入困境,正在寻找解决方案来修复以下错误:

致命错误:在第18行的/../application/Bootstrap.php中找不到类“Plugin\u AccessCheck”

我正在尝试注册一个新插件。我的代码是:

protected function _initAutoLoad()
{
    $modelLoader = new Zend_Application_Module_Autoloader(array(
                            'namespace' => '',
                            'basePath'  => APPLICATION_PATH));        

    $acl = new Application_Model_LibraryAcl();
    $auth = Zend_Auth::getInstance();

    $frontcontroller = Zend_Controller_Front::getInstance();
    $frontcontroller->registerPlugin(new Plugin_AccessCheck($acl, $auth));

    return $modelLoader;
}

(这是ZF 1.11)

要实现您的目标,您需要满足以下要求(所有名称和路径都区分大小写)

  • 在您的项目中有一个名为
    Plugin\u AccessCheck
    的类
  • 此类位于相对路径
    Plugin/AccessCheck.php
  • 自动加载程序已被告知,它应该自动加载以
    插件
    前缀开头的类。例如,在
    application.ini
    config文件中

    autoloadernamespaces[] = "Plugin_"
    
  • 还有其他方法可以实现这一点,但我在这里选择阻力最小的方法

    另一方面,如果这是在
    引导
    \u init*
    方法中,请不要这样获取前端控制器。用这个代替

    protected function _initPlugins()
    {
        $this->bootstrap('FrontController');
        $frontcontroller = $this->getResource('FrontController');
    
        // and the rest
    

    谢谢你的回答!我来看看。对于名称空间器,也许在我的类中放置hole函数更好,我确实更新了帖子。