Validator 1.0
             2023-02-22
             2391次浏览
        
        The first stable version of yiisoft/validator was released.
This package allows to check data in any format - arrays, objects, scalar values, etc. An example for the case when data is an object:
use Yiisoft\Validator\Rule\AtLeast;
use Yiisoft\Validator\Rule\Email;
use Yiisoft\Validator\Rule\Length;
use Yiisoft\Validator\Rule\Number;
use Yiisoft\Validator\Rule\Required;
use Yiisoft\Validator\Validator;
#[AtLeast(['email', 'phone'])]
final class Person
{
    public function __construct(
        #[Required]
        #[Length(min: 2)]
        public ?string $name = null,
        #[Number(min: 21)]
        public ?int $age = null,
        #[Email]
        public ?string $email = null,
        public ?string $phone = null,
    ) {
    }
}
$person = new Person(
    name: 'John', 
    age: 17, 
    email: 'john@example.com',
    phone: null
);
$result = (new Validator())->validate($person);
The validation result is an object that allows to check whether validation was successful:
$result->isValid();
It also contains errors occurred during validation:
$result->getErrorMessages();
Other features include:
- Supports custom data sets.
 - Handles nested data structures (one-to-one and one-to-many).
 - Supports PHP 8 attributes.
 - Error message formatting and translation.
 - Attribute names translation.
 - Conditional validation:
- Skip validation of "empty" value with possibility to configure "empty" condition.
 - Skip further validation if an error occurred for the same attribute.
 - Skip validation depending on a condition.
 
 - Possibility to use context in rule handler.
 - Common rules bundled.
 - Supports DI container for creating custom rule handlers with extra dependencies.
 - Exporting rules options for using in the frontend.
 
新闻归档
热门标签
- yii3
 - 扩展
 - 发布
 - yii2
 - debug
 - view
 - auth client
 - html
 - bootstrap
 - release
 - mongodb
 - redis
 - apidoc
 - Yii 1.1
 - validation
 - Yii 2.0
 - http
 - runner
 - extensions
 - console
 - error handler
 - gii
 - mailer
 - cache
 - http 客户端
 - queue
 - twig
 - hydrator
 - translator
 - widget
 - sphinx
 - router
 - log
 - symfonymailer
 - assets
 - config
 - db
 - swagger
 - middleware
 - imagine
 - elasticsearch
 - 图书
 - swiftmailer
 - widgets
 - definitions
 - i18n
 - IDE
 - fastroute
 - csrf
 - user