如何在验证 laravel 中设置比较日期时间?
Posted
技术标签:
【中文标题】如何在验证 laravel 中设置比较日期时间?【英文标题】:How can I set comparison datetime in validation laravel? 【发布时间】:2018-01-07 19:31:36 【问题描述】:我使用 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
我想添加这样的条件:
如果请求日期
我该怎么做?
【问题讨论】:
您很可能需要编写自定义验证规则。 @fubar,怎么做?您尝试用代码回答。在我看来它只需要在这里添加:'request_date'=>'required|...'
但我很困惑添加它
Custom validation rules docs。你先试试,有问题再回来。
尝试使用Carbon。它是 DateTime 的一个非常强大的扩展..
【参考方案1】:
我觉得你可以用after:date
验证中的字段必须是给定日期之后的值。这 日期将被传递到 PHP strtotime 函数中。
您只需要使用以下内容创建正确的日期字符串:
'request_date'=>'after:'.date(DATE_ATOM, time() + (5 * 60 * 60)),
似乎你也可以像这样链接这些规则:
'request_date' => 'required|date_format:Y-m-d H:i:s|after:5 hours'
【讨论】:
您确定需要使用request_date
值,而不是当前时间?
他要求 '
@gview,我试试这个:'request_date' => 'required|date_format:Y-m-d H:i:s|after:5 hours'
,它有效
对 laravel 5.7 仍然有效以上是关于如何在验证 laravel 中设置比较日期时间?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用另一个 API 的用户群在 laravel 中设置身份验证?
如何在 Laravel 5.1 中设置 JWT Token 的过期时间