我有一些验证规则:
return [
'name' => 'required',
'phone' => 'required_without:email',
'email' => 'required_without:phone|email',
];
我要验证的是,如果有电话,则不需要电子邮件,如果有电子邮件,则不需要电话。
我已经通过上面的方法解决了这个问题,但是当您输入电话号码并将电子邮件保留为空白(应该允许)时,我收到验证错误,指出该电子邮件未格式化为电子邮件地址。
如何允许电话或电子邮件,以及如果电子邮件需要进行电子邮件格式化?
答案 0 :(得分:0)
您可以这样使用。
if($request->input("phone")){
$data["phone"] = $request->input("phone");
$validate = '';
}elseif($request->input("email")){
$data["email"] = $request->input("email");
$validate = 'email';
}
return
Validator::make($data, [
'name' => 'required',
key($data) => array('required',$validate)
],