如何在验证 laravel 中设置比较日期时间?

How can I set comparison datetime in validation laravel?

我用laravel 5.3

我的 laravel 验证是这样的:

<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class AddCartRequest extends FormRequest
{
    public function rules()
    {
        return [
            'id'=>'required|numeric',
            ...
            'request_date'=>'required'
        ];
    }
}

如果 request_date 的值为

01-08-2017 13:00:00

我想添加这样的条件:

如果请求日期 < 现在 + 5 小时,那么它将显示消息:"Request date must be larger 5 hours from now"

我该怎么做?

我想你可以使用 after:date

The field under validation must be a value after a given date. The dates will be passed into the PHP strtotime function.

您只需使用如下内容创建正确的日期字符串:

'request_date'=>'after:'.date(DATE_ATOM, time() + (5 * 60 * 60)),

似乎您也可以像这样链接这些规则:

'request_date' => 'required|date_format:Y-m-d H:i:s|after:5 hours'