之后:日期不接受 Laravel 表单验证中的相同日期?

Posted

技术标签:

【中文标题】之后:日期不接受 Laravel 表单验证中的相同日期?【英文标题】:after:Date not accepting same date in Laravel form validation? 【发布时间】:2015-10-28 08:26:52 【问题描述】:

我正在使用laravel 表单验证方法进行日期验证并且工作正常。但after:date 不接受相同日期或相同日期。但在大多数情况下,我们要检查的日期应该等于或小于起始日期。

    public function rules() 

   return [
        'date' => ['required', 'date_format:"d-m-Y"', 'before:return_date'],
        'return_date' => ['date_format:"d-m-Y"', 'after:date']
    ];

它如何在laravel 内置验证方法中进行验证?

或者我应该编写自定义验证方法吗?

【问题讨论】:

只是不要在规则中指定 after:date 【参考方案1】:

也许你可以试试这样的东西

public function rules() 
$timestampAfter = strtotime(Input::get('date'));
$dateAfter = $timestampAfter ? date("d-m-Y", $timestampAfter - 86400) : 'date';
   return [
        'date' => ['required', 'date_format:"d-m-Y"', 'before:return_date'],
        'return_date' => ['date_format:"d-m-Y"', 'after:' . $dateAfter]
    ];

【讨论】:

以上是关于之后:日期不接受 Laravel 表单验证中的相同日期?的主要内容,如果未能解决你的问题,请参考以下文章

两个日期的 Laravel 自定义验证

Laravel - 在编辑视图上添加日期验证

Laravel 在商店和更新上的表单请求验证使用相同的验证

在 Laravel 请求中验证 Bootstrap 日期时间选择器

在 laravel 4 中使用引导日期选择器时禁用昨天之前的日期

Laravel - “其他”占位符不接受验证消息中的友好名称