I just need to check in Laravel validation that an array contains minimum 2 values and maximum 4 values. Is there any default validation rule can be used for this ? The size
element checks for exact size match and the other rules likes min
and max
are for strings, digits and file size.
25
votes
I do not believe there currently is a validation rule for this. You can however create a custom validation rule.
– Jerodev
which laravel version do you use?
– darthsoup
I am using Laravel 5.2
– Happy Coder
Ah Ok. You need to make your own validator check. The default size validator only checks the value and not min/max.
– darthsoup
2 Answers
31
votes
37
votes
You can use between
.
.
https://laravel.com/docs/5.2/validation#rule-between
For example:
'users' => 'required|array|between:2,4'
It is not explicitly stated in the docs, but it works with arrays, just like size
.
For more details, read validating array lengths in Laravel