omasn/reflection-validator

扩展 symfony 验证器的功能

1.0.0 2023-06-15 14:50 UTC

This package is auto-updated.

Last update: 2024-09-15 18:35:09 UTC


README

扩展 symfony 验证器的功能

安装

使用以下命令安装最新版本

$ composer require omasn/reflection-validator

基本用法

示例 1

class A {
    public int $number;
    /** @var B[] */
    public array $rows;
}
class B {
    public int $number;
    /** @var C[] */
    public array $rows;
}
class C {
    #[Assert\Positive]
    public int $number;
}

$reflValidator = Omasn\ReflectionValidator\ReflectionValidator::createSimple();

$violations = $reflValidator->validate(A::class, [
    'number' => 0,
    'rows' => [
        [
            'number' => 0,
            'rows' => [
                [
                    'number' => -1,
                ],
            ],
        ],
    ],
]);

self::assertEquals(1, $violations->count());

对于贡献者

安装 cs-fixer

mkdir -p tools/php-cs-fixer composer require --working-dir=tools/php-cs-fixer friendsofphp/php-cs-fixer

运行测试

执行: ./vendor/bin/phpunit

运行 lint

执行 cs-fixer: tools/php-cs-fixer/vendor/bin/php-cs-fixer fix src 执行 phpstan: ./vendor/bin/phpstan analyse src tests 执行 psalm: ./vendor/bin/psalm