如果您的意思是“自动”,我认为这是不可能的,因为 ErrorHandler 插件不是资源插件。
但是,如果您想引导您自己的个人错误处理程序,您可以执行以下操作:
在您的 application.ini 中:
errorhandler.class = "Zend_Controller_Plugin_ErrorHandler"
errorhandler.options.module = default
errorhandler.options.controller = error
errorhandler.options.action = error
并且,在您的引导程序中加载这些选项:
public function _initErrorHandler()
{
// make sure the frontcontroller has been setup
$this->bootstrap('frontcontroller');
$frontController = $this->getResource('frontcontroller');
// option from the config file
$pluginOptions = $this->getOption('errorhandler');
$className = $pluginOptions['class'];
// I'm using zend_loader::loadClass() so it will throw exception if the class is invalid.
try {
Zend_Loader::loadClass($className);
$plugin = new $className($pluginOptions['options']);
$frontController->registerPlugin($plugin);
return $plugin;
} catch (Exception $e) {
// do something useful here (like fall back to the default error handler)
echo $e->getMessage();
return null;
}
}