ISO8601 Date validator for Laravel 5
Written by Bastien Donjon, Posted in PHP
date_format rule for Laravel 5 Validator don’t work.
So here is a validation rule for Laravel :
<?php // file : app/Provider/AppServiceProvider.php namespace App\Providers; use Illuminate\Support\Facades\Validator; use Illuminate\Support\ServiceProvider; class AppServiceProvider extends ServiceProvider { /** * Bootstrap any application services. * * @return void */ public function boot() { // Validation Validator::extend( 'iso_date', function ($attribute, $value, $parameters, $validator) { $regex = '/^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|' . '(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]' . '\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)' . '-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:Z|[+-][01]\d:[0-5]\d)$/'; return preg_match_all($regex, $value) > 0; } ); } /** * Register any application services. * * @return void */ public function register() { // } }