php - Laravel validation form request doesn't work for conditions rule with a date field

one text

Solution:

you can use Rule::when($condition, $rules)

<?php
use Illuminate\Validation\Rule;

public function rules()
{
$adultDate = Carbon::now()->subYears(18);
$condition=Carbon::parse($this->brith_date)->isAfter($adultDate);
    return [
        'brith_date' => ['required','date'],
        
        'patron_name' => ['required' ,
          Rule::when($condition, ['string']),
         ];
}

Source