如何在 Laravel 上使用 Carbon 验证给定时间是否大于当前时间?
How can I validate given time is greater then current time using Carbon on Laravel?
我想验证格式为 H:i:s
(例如“16:35:00”)的时间输入是否大于当前时间。
$request->validate([
'start_time' => 'required|after:now',
'end_time' => 'required|after:start_time',
]);
以上代码检查的是日期而不是时间。
使用 setDateFrom
更改要与实际输入进行比较的日期(从开始开始,到最后结束),因此只检查时间与您最初提供的日期时间:
$request->validate([
'start_time' => 'required|after:' . Carbon::now()->format('H:i:s'),
'end_time' => 'required|after:start_time',
]);
但是,它不会验证不同日期的时间(例如 09:00 PM - 03:00 AM
第二天)。 start_time
和 end_time
,在这种情况下,应提供为 HH:mm
,但您可以轻松更改它。
$this->validate($request, [
'start_time' => 'date_format:H:i',
'end_time' => 'date_format:H:i|after:start_time',
]);
我想验证格式为 H:i:s
(例如“16:35:00”)的时间输入是否大于当前时间。
$request->validate([
'start_time' => 'required|after:now',
'end_time' => 'required|after:start_time',
]);
以上代码检查的是日期而不是时间。
使用 setDateFrom
更改要与实际输入进行比较的日期(从开始开始,到最后结束),因此只检查时间与您最初提供的日期时间:
$request->validate([
'start_time' => 'required|after:' . Carbon::now()->format('H:i:s'),
'end_time' => 'required|after:start_time',
]);
但是,它不会验证不同日期的时间(例如 09:00 PM - 03:00 AM
第二天)。 start_time
和 end_time
,在这种情况下,应提供为 HH:mm
,但您可以轻松更改它。
$this->validate($request, [
'start_time' => 'date_format:H:i',
'end_time' => 'date_format:H:i|after:start_time',
]);