Php Zend引导类和资源插件

Php Zend引导类和资源插件,php,zend-framework,Php,Zend Framework,我是zend框架的新手,试图了解引导是如何工作的。到目前为止,我了解到Zend_应用程序加载PHP环境,设置包含路径,配置自动加载程序,然后调用bootstrap类的bootstrap方法 Bootstrap方法执行所有资源方法(_init*()),然后执行资源插件 我的问题是,如果我使用resource方法和resource插件配置相同的资源,会发生什么?示例如下: //Bootstrap resource method protected function _initLayout()

我是zend框架的新手,试图了解引导是如何工作的。到目前为止,我了解到Zend_应用程序加载PHP环境,设置包含路径,配置自动加载程序,然后调用bootstrap类的bootstrap方法

Bootstrap方法执行所有资源方法(_init*()),然后执行资源插件

我的问题是,如果我使用resource方法和resource插件配置相同的资源,会发生什么?示例如下:

//Bootstrap resource method
    protected function _initLayout(){
          $this->bootstrap('layout');
          $layout = $this->getResource('layout');
          $layout->setLayout('index');
    }

//Bootstrap resource plugin
resources.layout.layout = "main"
目前,资源插件是在resource方法之后调用的,因此这应该覆盖我的布局并将其设置为“main”,但这不会发生

插件资源不应该覆盖我们资源方法的设置吗

我应该使用什么来引导资源方法或资源插件


感谢您的帮助。

引导类不会引导已经执行的资源,因此在您的示例中,资源插件不会运行,因为您通过类方法创建了“布局”资源。如果更改方法的名称,它将按预期工作

我会避免创建匹配插件名称的_init方法,因为它会导致不可预知的问题

我应该使用什么来引导资源方法或资源插件

你可以使用任何一种,所以这主要取决于个人偏好。我建议坚持一种方法,或者可能有一种约定,比如使用资源插件来配置定制应用程序资源的标准ZF内容和方法