Skip to content

Simple standalone PHP validation trait. That can be user in any object

License

Notifications You must be signed in to change notification settings

bTokman/validation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PHP VALIDATION TRAIT

Programming language Scrutinizer code quality Travis build

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.

About

Simple standalone PHP validation trait. That can be user in any object

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages