Laravel 5.2验证检查值是否不等于变量

9 php validation laravel laravel-5.2

在我的实例中,一个用户正在邀请另一个用户,我想检查他们邀请的用户是否不是他们自己.

因此,我有两个变量包含电子邮件用户 - >电子邮件

$this->validate($request, [
            'email' => 'required|email',
        ]);
Run Code Online (Sandbox Code Playgroud)

如何将验证规则添加到验证调用中?

pat*_*cus 20

您可以使用not_in,它允许您指定要拒绝的值列表:

$this->validate($request, [
    'email' => 'required|email|not_in:'.$user->email,
]);
Run Code Online (Sandbox Code Playgroud)


Ham*_*ndi 5

您可以different:field根据laravel文档使用

为了确保您的请求验证:

public function rules()
    {
        return [
            'from' => 'required',
            'to' => 'required|different:from',
            'action' => 'required',
            'access' => 'required'
        ];
    }
Run Code Online (Sandbox Code Playgroud)

这两个fromto应该不同(不相同)。

  • ` different:from` 有一个小棘手的时刻,至少对于 Laravel 5.8 来说是这样。情况是,如果 from 是 `from='3'` 和 `to=3`,它们将被视为不同。 (2认同)