如何在 Laravel 中使用 required_if 和电子邮件规则验证电子邮件字段

mis*_*irl 4 php email validation laravel

我正在验证表单,如果复选框is_external_user的值为 1,我希望将该email字段设置为必填字段并验证 type email

这是我的验证规则:

 'email' => [
    'validation'    => 
      'required_if:Users.is_external_user,1|email',
 ],
Run Code Online (Sandbox Code Playgroud)

required_if正在按预期工作,但类型email验证返回错误,表明它不是有效的电子邮件地址,而不需要。

有没有使用require_ifemail规则的有效方法?

mis*_*irl 7

我找到了一个决定:

'email' => [
    'validation'   => 'sometimes|nullable|required_if:Users.is_external_user,1|email',
]
Run Code Online (Sandbox Code Playgroud)

我已经添加sometimes|nullable到规则中了。