小编给大家分享一下在Laravel中处理请求验证的示例,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!
Laravel是网络工匠的PHP框架。这有助于我们构建强大的应用程序和API。很多人都知道有很多方法可以验证Laravel中的请求。处理请求验证是任何应用程序中非常重要的部分.Laravel有一些很好的功能,可以很好地处理这个问题。
<强>入门强>
我们大多数人都熟悉在控制器中使用验证器。这是处理传入请求验证的最常用方法。
以下是我们的验证器的样子用户控件
& lt; PHP ? namespace \ v1 \ App \ Http \控制器\ API用户; use \ App \ Http \控制器控制器; use 照亮\ Http \请求; use 阐明\ \外墙\验证器的支持; use 应用\实体\ \用户模型; class UserController  extends 控制器 { ,,,public function 商店(Request $请求) ,,,{ ,,,,,,,//validate incoming 请求 ,,,,,,,validator 美元;=,验证器::使(美元请求→所有(),( ,,,,,,,,,,& # 39;电子邮件,,=祝辞,& # 39;需要邮件| |独特:用户# 39; ,,,,,,,,,,& # 39;名字# 39;,=祝辞,& # 39;需要字符串| |马克斯:50 & # 39; ,,,,,,,,,,& # 39;密码# 39;,=祝辞,& # 39;需要# 39; ,,,,,,); ,,,,,,if (验证器→美元失败()),{ ,,,,,,,,,,,会话:flash(& # 39;错误# 39;,,验证器→美元消息()→第()); ,,,,,,,,,,,return 重定向()→回()→withInput (); ,,,,,,} ,,,,,,//,finally store our 用户 ,,,} }
<>强在控制器中验证强>
在控制器中验证传入请求没有任何问题,但这不是最好的方法,你的控制器看起来很乱。在我看来,这是不好的做法。控制器应该只处理来自路由的一个处理请求并返回适当的响应。
在控制器中编写验证逻辑将打破单一责任原则。我们都知道需求会随着时间的推移而变化,每次需求变更时,您的班级职责也会发生变化,因此,在单一班级中承担很多责任使得管理变得非常困难。
Laravel具有表单请求,一个包含验证逻辑的单独请求类。要创建一个,您可以在工匠命令下使用。
php工匠:请求UserStoreRequest
这将创建新类的请求应用程序\ Http请求\ \ UserRequest
& lt; php ? namespace 应用\ Http \请求; use 照亮\ \ Http \ FormRequest基础; class UserStoreRequest  extends FormRequest { ,,,/* * ,,,,*,Determine if 从而user is authorized 用make 却;能够请求。 ,,,, ,,,,*,@return 保龄球 ,,,*/,,,public function 授权() ,,,{ ,,,,,,,return 真实; ,,,} ,,,/* * ,,,,*,Get 从而validation rules that apply 用,并请求。 ,,,, ,,,,*,@return 数组 ,,,*/,,,public function 规则() ,,,{ ,,,,,,,return [ ,,,,,,,,,,,& # 39;电子邮件,,=祝辞,& # 39;需要邮件| |独特:用户# 39; ,,,,,,,,,,,& # 39;名字# 39;,=祝辞,& # 39;需要字符串| |马克斯:50 & # 39; ,,,,,,,,,,,& # 39;密码# 39;,=祝辞,& # 39;需要# 39; ,,,,,,,); ,,,} ,,,,/* * ,,,,*,Custom message for 验证 ,,,, ,,,,*,@return 数组 ,,,*/,,,public function 信息() ,,,{ ,,,,,,,return [ ,,,,,,,,,,,& # 39;email.required& # 39;,=祝辞,& # 39;Email is ! & # 39; ,,,,,,,,,,,& # 39;name.required& # 39;,=祝辞,& # 39;Name is ! & # 39; ,,,,,,,,,,,& # 39;password.required& # 39;,=祝辞,& # 39;Password is ! & # 39; ,,,,,,,); ,,,} }
Laravel形式请求类有两个默认方法身份验证规则()和().auth()无论当前用户是否被允许请求,您都可以在方法中执行任何授权逻辑。在规则()方法中,您可以编写所有验证规则。还有一种方法消息()可以传递自己的验证消息数组。
现在改变我们用户控件使用我们UserStoreRequest。你可以输入提示我们的请求类,它会在调用我们的控制器函数之前自动解析和验证。
& lt; php ? null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null在Laravel中处理请求验证的示例