Pet*_*nka 1 php laravel laravel-validation
我希望仅当请求中输入的礼物值为 true 并且经过身份验证的输入值为 false 时才需要purchase_first_name和purchase_last_name 。
到目前为止我已经尝试过:
public function rules()
{
return [
'gift' => 'required',
'authenticated'=>required,
'purchaser_first_name' => 'required_if:gift,true,required_if:authenticated,false',
'purchaser_last_name' => 'required_if:gift,true,required_if:authenticated,false',
];
}
Run Code Online (Sandbox Code Playgroud)
这种方法结果使用 OR 运算符,而不是我想要的 AND 运算符。
你可以这样尝试:
'purchaser_first_name' => Rule::requiredIf(function () use ($request) {
return $request->input('gift') && !$request->input('authenticated');
}),
Run Code Online (Sandbox Code Playgroud)
在函数中,您可以设置逻辑。我不确定你真正需要什么,但这是一个很好的开始。
另外,请检查文档以获取有关此内容的更多信息。