【问题标题】:yii2: Proper way to throw new exceptionyii2:抛出新异常的正确方法
【发布时间】:2015-04-29 01:33:16
【问题描述】:

只是为了测试,我在我的模型中添加了这段代码,同时设置了 debug = true 和 false。

if($packagedays < 1)
     {
      throw new \yii\base\Exception( "package days cannot be less than 1" );
     }

现在当 Yii 调试为真时:我得到了

异常 – yii\base\Exception 包裹天数不能少于 1

但是当我将调试设置为 false 我正进入(状态 例外 An internal server error occurred.

Web 服务器正在处理您的请求时发生上述错误。

我想要的是替换An internal server error occurred.package days cannot be less than 1debug=false

我在这里缺少什么?

谢谢。

【问题讨论】:

  • 您确定要在此处抛出异常吗?这看起来很像 input validation 的用例。

标签: php exception-handling yii2


【解决方案1】:

你应该简单地抛出一个UserException

UserException 是旨在向最终用户显示的异常的基类。

阅读更多:http://www.yiiframework.com/doc-2.0/yii-base-userexception.html

【讨论】:

  • 感谢烧酒,按我想要的方式完美运行。
猜你喜欢
  • 2021-12-27
  • 2019-05-04
  • 1970-01-01
  • 1970-01-01
  • 2016-04-03
  • 1970-01-01
  • 2011-07-28
  • 1970-01-01
  • 2015-05-07
相关资源
最近更新 更多