Bootstrap.php中此方法的用途是什么?
protected function _initFrontControler(){
$this->bootstrap('FrontController');
$frontController = Zend_Controller_Front::getInstance();
$frontController->throwExceptions(true);
$frontController->returnResponse(true);
try {
$response = $frontController->dispatch();
if($response->isException()) {
throw new Exception;
}
$response->sendResponse();
} catch (Exception $e) {
print $e->getMessage();
}
}
我知道它可以处理错误,但是例如布局不起作用。什么是此方法的完整实现,其行为与默认(或没有此方法)完全相同。
答案 0 :(得分:0)
您也可以使用单独的资源初始化函数来引导布局,例如:
protected function _initViewSetting(){
$this->bootstrap('layout');
$this->bootstrap('view');
...
}
或者您可以在配置文件(ini / xml)中执行此操作,资源将自动加载。实际上,如果你仔细研究ZF代码,你会发现FrontController已经自动加载。而不是$this->bootstrap('FrontController')
,你可以使用$this->getResource('FronController')
就个人而言,我不会使用您提供的代码。它只使用FrontController并调度请求,并负责异常处理。如果是在bootstrap中,直接调用dispatch()并不是很明智。如果我错了,有人会纠正我。