1. 验证规则
      1. 验证规则,提供了大量的使用封装好的规则,我们只需要进行调用即可;
      2. 基础课程中,我们使用了required、min和max这三种比较简单的;
      3. 下面,我们挑出比较典型常用的,演示一遍,具体大全网址如下;

    https://learnku.com/docs/laravel/7.x/validation/7467#available-validation-rules
    image.png
    PS:约 66 个

    (1) .alphadash: 字段必须有字母,数字破折号(-)和下划线()构成的
    ‘username’ => ‘required|alpha_dash’,

    (2) .between: 字段长度必须在指定的区间之间;
    ‘username’ => ‘required|between:2,6’,

    (3) .size:6: 字段长度固定在某个值
    ‘username’ => ‘required|size:6’,

    (4) .email: 字段必须符合email格式; 例如:27232580745@qq.com

    ‘username’ => ‘required|email’,

    (5) .unique:users: 字段值是唯一的,通过指定数据表字段检查;
    ‘username’ => ‘required|unique:users’,

    (6) .confiremed: 这个基本用于密码和密码却认,固定了字段名称,也就是说下面这个input的name属性password_confirmation
    ‘password’ => ‘required|min:6|confirmed’

    (7) different:password: 字段和另一个字段不可以相同的验证;
    ‘username’ => ‘required|different:password’,

    (8) ip/json: 字段是否是ip地址/字段是否json数据;
    ‘username’ => ‘required|ip’,
    ‘username’ => ‘required|json’,

    1. 其它用法
      1. 验证方法还提供了Rule类提供更加流畅的验证构造,比如in、not_in

    ‘username’ => ‘required|in:tom,Gatsby,lusy’,

    ‘username’ => [
    ‘required’,
    Rule::in([‘tom’,’lusy’,’Gatsby’])
    ],

    //如果只验证一个规则,不需要数组,如果规则名有下划线,首字母大写
    ‘username’ => [
    ‘required’,
    Rule::notIn([‘yiwen’,’lusy’,’Gatsby’])
    ],

    b. Rule类还可以结合where来限制验证范围等操作;
    //验证是否重复
    ‘username’ => Rule::unique(‘users’),

    ‘username’ => Rule::unique(‘users’)->where(function ($query) {
    $query->where(‘id’, 20);
    }),