首页 > 解决方案 > Laravel 日期验证不适用于 before_or_equal 或 after_or_equal

问题描述

我正在尝试以F d Y但它不起作用的格式验证日期。验证通过,即使date_from应该早于或等于date_to

有效载荷

{
    "value": "Yes",
    "stay_days": [
        {
            "type": "TYPE",
            "date_from": "March 09 2033",
            "date_to": "March 21 2030", 
        }
    ]
}

protected function createOrUpdate(Request $request) {

    $data = $request->all();

    $validationRules = [
                'value' => ['required', 'in:Yes,No'],
                'stay_days.*.date_from' => ['required', 'date', 'date_format:F d Y', 'before_or_equal:date_to'],
                'stay_days.*.date_to' => ['required', 'date', 'date_format:F d Y', 'after_or_equal:date_from'],
    ];

    $validator = Validator::make($data, $validationRules);

    if($validator->fails()) {
        return 'Validation failed';
    }
}

标签: laravel

解决方案


推荐阅读