How Can You Create Custom Validation Recipe In Laravel 5.x Skip to main content

Custom Validation Recipe In Laravel 5.x

Saurabh Dhariwal

Saurabh Dhariwal

How can you create Custom Validation recipe in Laravel 5.x

Laravel 5 introducing with changed directory structurepsr-4 auto-loading standard by default usage, dependency injection support on route and controller methods and form validation with form requests.

Once we completed validate data in Laravel by override default data validation package and abstract out from data validation to entity by specific services to make the reusable code.

Basic recipe to create custom validation

1) Create own custom validation class

Now we have a new rule called aws which return false if string is other than 'foo'

How can you create Custom Validation recipe in Laravel 5.x

Note: CamelCase in function name validateAws

2) Create service provider class and register it

We add our new validation rule into app\Providers\AppServiceProvider.php that comes by default with Laravel. You may create a validator instance manually using the Validator facade.

How can you create Custom Validation recipe in Laravel 5.x

Don't forget to add 'use App\Services\Validation\CustomValidator;' to be able to, well, use it within the class.

3) Use created custom validation

Usage of custom validator rule to check name is foo only.

How can you create Custom Validation recipe in Laravel 5.x

Well, fortunately, laravel is very flexible as it allows you to build your custom validation rules and with different ways. we've added our rule uk_phone as a second rule to the field phone – in addition to being required, it will also check out the string is 'foo' only.

Bottom Note

Now the notable thing here is how we set the name of the methods.

1) All validation rule method names must have the validate prefix. The rest of it must be in CamelCase (without spaces).

2) Validation rule will be in lowercase of what the method is named (without validation prefix) and each word will be separated by an underscore.

You can take the ride with more detail about laravel 5.2 validation, Displaying The Validation ErrorsCustom Error Messages.

So here we go, that's recipe about how we can create and use custom validation rules with Laravel 5.