Php ZEND framework application.ini和引导
我对引导ZF的不同方式感到困惑: 例如,我可以在application.ini中执行此操作:Php ZEND framework application.ini和引导,php,zend-framework,bootstrapping,Php,Zend Framework,Bootstrapping,我对引导ZF的不同方式感到困惑: 例如,我可以在application.ini中执行此操作: resources.view.encoding = "UTF-8" 然后我就可以做同样的事情了?在bootstrap.php文件中: protected function _initView(){ $view = new Zend_View(); $view->setEncoding('UTF-8'); $viewRenderer =Zend_Controller_Action_H
resources.view.encoding = "UTF-8"
然后我就可以做同样的事情了?在bootstrap.php文件中:
protected function _initView(){
$view = new Zend_View();
$view->setEncoding('UTF-8');
$viewRenderer =Zend_Controller_Action_HelperBroker::getStaticHelper('ViewRenderer');
$viewRenderer->setView($view);
return $view;
}
1这些方法实际上是一样的吗?或者他们在后台的工作方式不同
2是否有理由选择其中一个而不是另一个?我假设一定有….?application.ini使用,而bootstrap类初始化普通对象。我看到了资源加载程序相对于特定于应用程序/模块的引导类在可重用性方面的优势
如果您的引导类总是看起来相同,那么您可能需要考虑编写一个执行它的资源加载器。它的配置也更简单,用户更友好,您也可以混合使用这两种方法。
application.ini使用,而bootstrap类初始化普通对象。我看到了资源加载程序相对于特定于应用程序/模块的引导类在可重用性方面的优势如果您的引导类总是看起来相同,那么您可能需要考虑编写一个执行它的资源加载器。配置起来也更简单、更友好,您也可以混合使用这两种方法。
更不用说Zend_Configbut中提供的内置环境dev/test/prod切换和继承了,但我想我不明白这些设置是如何应用的。如果我在application.ini和bootstap文件中指定不同的设置,比如上面的编码,会怎么样。哪一个将被应用?@Andre From memory,Bootstrap _init*方法在应用程序资源插件之后执行。此外,我认为这可能是正确的,也可能不是正确的,如果您的init方法与资源插件命名相同,例如view、db、layout等,它将执行而不是plugin是的,它将在application.ini之后执行并覆盖设置。但我认为应该避免这种冗余配置。更不用说Zend_Configbut中提供的内置环境dev/test/prod切换和继承了——我想我不明白这些设置是如何应用的。如果我在application.ini和bootstap文件中指定不同的设置,比如上面的编码,会怎么样。哪一个将被应用?@Andre From memory,Bootstrap _init*方法在应用程序资源插件之后执行。此外,我认为这可能是正确的,也可能不是正确的,如果您的init方法与资源插件命名相同,例如view、db、layout等,它将执行而不是plugin是的,它将在application.ini之后执行并覆盖设置。不过,我认为应该避免这种冗余配置。