php - 为用户生成的错误抛出异常是否被视为滥用?

标签 php exception exception-handling

假设我有一个允许用户注册网站的表单,他们可能会遇到三个预期的错误:

  1. 用户名已被占用
  2. 电子邮件已被占用
  3. 密码不符合最低要求

如果我为这些抛出异常,然后在 try/catch 中优雅地处理它们,这被认为是好的做法,还是滥用异常?

我觉得使用异常向最终用户显示已知/预期消息与使用异常提醒开发人员在开发某些东西时代码存在问题是有区别的。

使用异常和 try/catch block 作为显示面向用户的消息(甚至是成功确认!)的简单解决方案是非常诱人的。关于异常消息(如果有)的使用/滥用行在哪里?

最佳答案

成功确认不是异常,这实际上是exception这个词的本质。即:发生异常是因为功能未以成功结束。

针对您提到的任何情况提出异常(exception)绝对不是滥用职权。我个人甚至会说这是一个很好的做法,因为它在最高级别强制执行用例封装(尝试在服务接口(interface)或前端级别捕获)

关于php - 为用户生成的错误抛出异常是否被视为滥用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19900711/

相关文章:

javascript - 通过window.prompt将一些数据发布到mysql数据库的特定字段(代码运行不正常)

php - 如何处理此 PHP/mysql 插入语句中的空值

http - Simple-Web-Server 因可能错误捕获的异常而崩溃

c# - 为什么 Dispatcher.BeginInvoke 为 ThreadStart 解包 TargetInvocationException 而不是为 Action 解包?

c++ - 使用 SEH(结构化异常处理)时观察到的不同行为

php - 无法捕获 AWS S3 异常

php - 跨平台 PHP 注意事项?

php - 如何在 Blade View 中动态插入代码

wcf - 常见的 WCF 异常 : Connection Unexpectedly Closed

python - 除了 OSError 之外,subprocess.Popen() 还可以引发哪些异常?