laravel框架表单验证Validator::make()

发布时间:2022-09-06 19:23:09 阅读:1473次

laravel框架表单认证Validator::make()

如果我们采用前台端分离的开发方式

我们可以使用Validator::make() 来进行表单验证

以下为controller代码

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;

// 独立验证,导入 Validator
// use Illuminate\Support\Facades\Validator;
// 可以直接简写为下面这种方式
// 为什么能这么简写?因为在 /config/app.php 文件中有配置改路径
use Validator;

class UserController extends Controller
{   
    // 显示添加用户页面
    public function index() {
        return view('user.index');
    }

    // 处理添加用户操作
    public function save(Request $request) {
        // 输出请求数据
        // dump($request->all());
        // aravel 5.6 之前是不会自动移除 _token 验证字段的,需要手动移除
        // dump($request->except(['_token']));

        // 表单数据后台验证
        $validate = Validator::make($request->all(), [
            // 字段名 => 规则名(多规则用 | 隔开)
            'account' => 'required|between:2,6',
            // 确认密码的 confirmed 属性一定要写在原始密码上
            'pwd' => 'required|confirmed',
            'pwd_confirmation' => 'required',
            'email' => 'required|email'
        ], [
            // 字段名.规则名 => 错误语句
            'account.required' => '用户名不能为空',
            'account.between' => '用户名必须为2-6个字符',
            'pwd.required' => '密码不能为空',
            'pwd_confirmation.required' => '确认密码不能为空',
            'pwd.confirmed' => '两次密码不一致',
            'email.required' => '邮箱不能为空',
            'email.email' => '邮箱格式不正确',
        ]);
        // 输出验证对象所有可用方法
        // dump(get_class_methods($validate));
        // 输出验证对象
        // dump($validate);
        // 判断是否验证失败
        if ($validate->fails()) {
            // 返回错误结果
            return redirect()->back()->withErrors($validate);
        }
        // 输出请求数据
        dump($request->all());
    }
}

如有问题,可以QQ搜索群1028468525加入群聊,欢迎一起研究技术

支付宝 微信

有疑问联系站长,请联系QQ:QQ咨询

转载请注明:laravel框架表单验证Validator::make() 出自老鄢博客 | 欢迎分享