Php 在Zend Framework 2中加载自定义资源

Php 在Zend Framework 2中加载自定义资源,php,zend-framework2,Php,Zend Framework2,我刚开始使用Zend Framework 2.0,希望加载我自己的资源 我自己的库PWS位于库文件夹中 要覆盖FrontController资源,我有以下文件 PWS/Application/Resource/FrontController.php <?php namespace PWS\Application\Resource; class FrontController extends \Zend\Application\Resource\FrontController {

我刚开始使用Zend Framework 2.0,希望加载我自己的资源

我自己的库PWS位于库文件夹中

要覆盖FrontController资源,我有以下文件 PWS/Application/Resource/FrontController.php

<?php

namespace PWS\Application\Resource;

class FrontController extends \Zend\Application\Resource\FrontController
{

    public function init()
    {
        return parent::init()
    }
}
该项目使用模块,但我认为这不会影响问题

当我调试类ResourceLoader(包含资源的硬编码路径)时,它被用来加载FrontController而不是我自己的资源


这不是紧急的,而是烦人的:)

资源是否区分大小写?我知道这是“Frontcontroller”而不是“Frontcontroller”。
也许可以试一试?这里没有什么其他内容……:]


(这是我使用ZF1的经验,而不是2)

经过一些痛苦的调试后,我找到了加载自定义资源的方法

在我的引导文件中,我插入了以下函数:

function _initResources() 
{
     $broker = $this->getBroker();
     $broker->getClassLoader()->registerPlugin('frontcontroller', 'PWS\Application\Resource\FrontController');
}
这将用我自己的类替换ResourceLoader中硬编码的frontcontroller路径

这仍然不是我想要的,因为这样我无法从自己的资源名称空间一次加载所有资源。application.ini中的pluginPaths变量不起作用。但是这种方法更快,因为Zend不必遍历目录来找到正确的类


我想我必须等待ZF2版本,它包含一些文档。

这在ZF1中确实如此,而不是在ZF2中(为框架带来更多一致性)
function _initResources() 
{
     $broker = $this->getBroker();
     $broker->getClassLoader()->registerPlugin('frontcontroller', 'PWS\Application\Resource\FrontController');
}