This package provides missing Laravel validation rules.
Via Composer
$ composer require raditzfarhan/sahrule
Import validation classes that you need and use it in Laravel validate function as you normally would. Example usage as below snippet:
use RaditzFarhan\SahRule\Rules\Base64Image;
...
// will accept pre-defined allowed image types
$validatedData = $request->validate([
'image' => ['required', new Base64Image]
]);
// specify allowed image types
$validatedData = $request->validate([
'image' => ['required', new Base64Image('png', 'gif')]
]);
Use array instead of pipe-delimited string.
All rules are under RaditzFarhan\SahRule\Rules
namespace.
Rule | Description | Example |
---|---|---|
Base64Image | Validate a base64 image string. Pre-defined allowed image types are jpg, jpeg, png, gif, bmp and tiff. | new Base64Image new Base64Image('jpg', 'png') |
Base64MaxImageSize | Validate a base64 image size. Default max size is 2 MB. Pass your own max size in byte (B). | new Base64MaxImageSize new Base64MaxImageSize(500) |
All rules come with a default validation message that was pre-defined by the package. If you need to write your own custom message, you can overwrite in in validation.php
file that typically can be found at resources/lang/en
folder.
The validation key is the rule class name in snake case format. For example for Base64Image
rule, the key is base64_image
. Snippet as below:
return [
...
'base64_image' => 'Your custom validation message here.',
...
];
Please see the changelog for more information on what has changed recently.
MIT. Please see the license file for more information.