b-tokman / validation
Simple standalone PHP validation trait. That can be user in any object
Requires
- php: ^7.2.5
- symfony/validator: ^5.0
Requires (Dev)
- phpunit/phpunit: ^6.3
This package is auto-updated.
Last update: 2024-10-15 19:32:17 UTC
README
PHP VALIDATION TRAIT
This is a simple PHP standalone trait, that can be used to validate properties in any object. The validation process based on the Symfony Validation Component
🚀 Installation
This library requeired PHP version 7.2
or highter. And composer - package manger for PHP.
$ composer require b-tokman/validation
💡 Usage
After the installation you'll be able to use the bTokman\validation\ValidationTrait
trait in your app.
You cannot override a trait's property in the class where the trait is used. However, you can override a trait's property in a class that extends the class where the trait is used:
- Start using trait in your base class
- Declare validation rules in your extended class. List of availible Rules
- On a new instance of your class just call method
validate
.
class BaseObject { use bTokman\validation\ValidationTrait; } ...... class ValidationObject extends BaseObject { public $validationRules = [ 'password' => [NotBlank::class, [Length::class, ['min' => 8]]], ]; public $password; } ...... $object = new ValidationObject(); $result = $object->validate();
Or you can override a trait's property in a class constructor:
class ValidationObject { use bTokman\validation\ValidationTrait; public function __construct() { $this->validationRules = [ 'password' => [NotBlank::class, [Length::class, ['min' => 8]]], ]; } public $password; } $object = new ValidationObject(); $result = $object->validate();
The validation result is
array
of errors[[fieldName] => [errorMessage1, errorMessag2, ...]
.null
if the validation was passed.