Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

Crazylife's avatar

How to validate date and time?

I have a validation as shown below

'date' => 'nullable|date_format:Y-m-d|after_or_equal:today',
'time' => 'nullable|date_format:H:i'

When i am testing with data today data with past time. It still allowed me to pass. How can i validate if today date and time must be greater or equal time now?

0 likes
2 replies
abhijeet9920's avatar
Level 5

Hello @crazylife ,

You can use custom validation rules.

Create a rule class, which takes date from request parameter as argument. Compare that date using Carbon\Carbon

<?php

namespace App\Rules;
use Illuminate\Contracts\Validation\Rule;
use Illuminate\Support\Facades\Hash;

class Date implements Rule
{
    
    private $date;
    public function __construct($date)
    {
        $this->date = $date;
    }

    
    public function passes($attribute,$value)
    {
	    //build your logic;
    }

    public function message()
    {
        //your message;
    }
}

//called this 
$request->validator(['date' => ['required', new Date($request->date)]]);

Hope this helps

2 likes

Please or to participate in this conversation.