Yii2-捕获要求错误

时间:2018-07-18 21:28:24

标签: exception yii2 yii2-basic-app

我有一个使用基本应用程序模板创建的Yii2应用程序。在web.php中,我需要一个名为params.php的文件。为了解决这个问题,我使用了文件存在功能:

if(file_exists(__DIR__ . '/params.php')) {
        $params = require __DIR__ . '/params.php';
    } 

我想抛出一个异常,以便显示Yii错误/调试页面。我尝试过:

if(file_exists(__DIR__ . '/params.php')) {
        $params = require __DIR__ . '/params.php';
    } else {
        throw new Exception("Error", 1000);
    }

但是Yii2错误处理程序无法捕获它,我不确定此时是否已经可用。有没有其他方法可以在任何这些页面上显示它?

1 个答案:

答案 0 :(得分:2)

错误处理程序在应用初始化时注册。 InterfaceOne中的配置是在应用初始化之前加载的(因为您需要先获取配置才能初始化应用),因此此时错误处理程序尚未就绪。

您可以通过使用事件来推迟加载参数:

web.php