Bil*_*son 0 php validation laravel
所以我有以下验证:
'birth_date'             => 'date_format:Y-m-d|before:deceased_date',
'deceased_date'          => 'date_format:Y-m-d|after:birth_date',
Run Code Online (Sandbox Code Playgroud)
问题是这些都不是必填字段。有人可以输入没有birth_date 的死亡日期,反之亦然。目前,如果您发送没有出生日期的已故日期,则after验证失败。有没有办法检查before/after检查其他日期是否已发送?
需要明确的是,这里是验证场景:
只寄一份也可以。我只是想确定,如果他们同时发送两者,它会检查该人是否在出生前没有死亡,反之亦然。
您可以使用required_with和bail两者来解决您的问题:
'birth_date'     => 'bail|required_with:deceased_date|date_format:Y-m-d|before:deceased_date',
'deceased_date'  => 'bail|required_with:birth_date|date_format:Y-m-d|after:birth_date',
Run Code Online (Sandbox Code Playgroud)
更新
您可以尝试sometimes解决您的问题:
$validation = Validator::make($formData, [
    ...
]
$validation->sometimes('birth_date', 'before:deceased_date', function($input){
    return ($input->birth_date && $input->deceased_date);
});
Run Code Online (Sandbox Code Playgroud)
        |   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           644 次  |  
        
|   最近记录:  |