Php 如何动态更改Yii错误处理程序?
在Yii的config.php中,我们有一条语句,它声明哪个控制器是默认控制器,并且在应用程序中只有一个错误处理程序:Php 如何动态更改Yii错误处理程序?,php,error-handling,yii,Php,Error Handling,Yii,在Yii的config.php中,我们有一条语句,它声明哪个控制器是默认控制器,并且在应用程序中只有一个错误处理程序: 'errorHandler' => array( 'errorAction' => 'site/error', ), 因此,我需要在我的站点控制器下有一个actionError(),以便在我的站点中预览错误,但这不是我真正需要的 我试图在扩展基本CController(Yii的基本控制器)的自定义控制器中动态更改Yii::app()->errorHandl
'errorHandler' => array(
'errorAction' => 'site/error',
),
因此,我需要在我的站点控制器下有一个actionError()
,以便在我的站点中预览错误,但这不是我真正需要的
我试图在扩展基本CController
(Yii的基本控制器)的自定义控制器中动态更改Yii::app()->errorHandler->errorAction
到目前为止,我已经尝试过这样的方法:
<?php
class AdminController extends CController {
public $layout = '//layouts/admin';
public function init() {
parent::init();
Yii::app()->errorHandler->errorAction = '/admin/error';
}
}
您应该尝试以下方法:
Yii::app()->setComponents(array(
'errorHandler'=>array(
'errorAction'=>'/admin/error'
)
));
您知道如何将页面标题传递给errorAction吗?
Yii::app()->setComponents(array(
'errorHandler'=>array(
'errorAction'=>'/admin/error'
)
));