php – 应该使用异常进行表单验证吗?

前端之家收集整理的这篇文章主要介绍了php – 应该使用异常进行表单验证吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这可能是个问题,但无论如何.可以使用异常进行表单验证吗?假设我有一个表格要求用户提供他们的姓名和电子邮件,是否可以执行以下操作?
try {
    if (empty($_POST["name"])) {
        throw new UserRegistrationException("Your name cannot be empty.");
    }

    if (filter_var($_POST["email"])) {
        throw new UserRegistrationException("Invalid email");
    }

    // Save new user into database
} catch (UserRegistrationException $e) {
    // Show errors on screen
}

此外 – 如果这是实际的正确方法 – 如果用户同时提交空名称和无效电子邮件,那么两个例外都会执行,还是只执行首先出现的例外(在这种情况下,名称为1)?

我顺便使用PHP.

我个人喜欢使用例外来阻止或改变程序流程.换句话说,如果特定字段的验证改变了数据的处理方式,或者需要重复该过程,那么我总是使用异常来进行错误处理.

如果它是微不足道的,或者我只是编译错误消息列表,那么我不会触发异常.

要回答问题,不能同时抛出两个例外.将抛出第一个throw语句.这并不是说有时将重新抛出作为另一种类型的例外是没有意义的.

猜你在找的PHP相关文章