laravel 请求参数智能校验

来源:互联网 发布:金山网络官网个人中心 编辑:程序博客网 时间:2024/05/19 18:10

这里主要是实现,laravel框架请求的参数进行校验,并且如果不同的参数出错,分别给出不同的准确提示,从而避免笼统的提示参数错误。从而准确快速的知道到底是哪个参数出了问题。示例代码如下:

/**  * @param PostLoginWithMobileRequest $request  * @return \Illuminate\Http\JsonResponse  * 登陆  *  postLoginByMobile(PostLoginWithMobileRequest $request)  */  public function postLoginByMobile(Request $request)  {   //校验规则    $rules = [         'un' => 'required|regex:/^1[34578][0-9]{9}$/',         'pin' => 'required|string',         'mid' => 'required|string',         'push_service_type' => 'required|integer',         'ct' => 'required|integer'     ];     //错误提示信息     $message = [         'un.required' => '用户名不能为空',         'pin.required' => '验证码不能为空',         'un.regex'=>'用户名格式不对',     ];     $validator = \Validator::make($request->all(),$rules,$message);  //第一个参数是提交的数据,第二个是校对规则,第三个是错误信息     $errors = $validator->errors()->all(); //这是捕获到的所有参数验证的错误信息     if(!empty($errors))  $first_errors = $errors[0];     //如果验证不通过     if(!($validator->passes()))  return $this->setStatusCode(9999)->respondWithError($first_errors); //如果参数错误,这里就会给出不同的错误信息提示   //接下去就可以进行业务逻辑实现了}
0 0
原创粉丝点击