【问题标题】:Defining new Exceptions on Yii2在 Yii2 上定义新的异常
【发布时间】:2015-11-19 18:07:34
【问题描述】:

我正在使用 Yii2 框架开发一些 Web 服务。

当我编写控制器的功能之一时,我定义了一个自定义异常,该异常在与控制器相同的文件上扩展了 Exception。

class CustomException extends Exception {}

然后我看到其他控制器需要相同的例外。 我认为:干!

我在 \components 上创建了一个文件 CustomExceptions.php:

namespace app\components;

问题是现在我用'use'键导入这个异常:

use \app\components\CustomException;

似乎一切正常,我的 IDE (JetBrains) 能够找到自定义异常代码。

但是当我运行这段代码时它失败了。

我不知道为什么,但它似乎找不到这个类。

我做错了什么?

谢谢!!

【问题讨论】:

  • 这个“使用\app\components\ExampleCustomException;”不应该是“使用 \app\components\CustomException;” ?
  • 这是我在写问题时产生的错误。这不是问题!固定的!谢谢:)
  • 不应该是class CustomException extends \Exception {}吗?否则,您将扩展 app\components\Exception,而不是核心 php 异常类。

标签: php yii2


【解决方案1】:

我发现了这个:yii2: Proper way to throw new exception 所以你可以oververide UserException:

<?php


namespace app\components;
use yii\base\UserException;


class CustomException extends UserException
{

}

【讨论】:

    【解决方案2】:

    尝试

    use app\components\CustomException;
    

    而不是

    use \app\components\CustomException;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-04-29
      • 2014-12-11
      • 2016-03-18
      • 1970-01-01
      • 2023-04-01
      • 2013-12-01
      • 1970-01-01
      相关资源
      最近更新 更多