1 | <?php declare(strict_types=1); |
||
31 | class ArrayValidator extends BaseValidator |
||
32 | { |
||
33 | use ArrayValidation; |
||
34 | |||
35 | /** |
||
36 | * @var ContainerInterface|null |
||
37 | */ |
||
38 | private $container; |
||
39 | |||
40 | /** |
||
41 | * @param RuleInterface[]|iterable $rules |
||
42 | * @param ContainerInterface|null $container |
||
43 | */ |
||
44 | 3 | public function __construct(iterable $rules, ContainerInterface $container = null) |
|
54 | |||
55 | /** |
||
56 | * @param RuleInterface[]|iterable $rules |
||
57 | * @param ContainerInterface|null $container |
||
58 | * |
||
59 | * @return self |
||
60 | */ |
||
61 | 3 | public static function validator(iterable $rules = [], ContainerInterface $container = null): self |
|
67 | |||
68 | /** |
||
69 | * @inheritdoc |
||
70 | */ |
||
71 | 3 | public function validate($input): bool |
|
84 | |||
85 | /** |
||
86 | * @return ContainerInterface|null |
||
87 | */ |
||
88 | 3 | protected function getContainer(): ?ContainerInterface |
|
92 | |||
93 | /** |
||
94 | * During validation you can pass to rules your custom context which might have any additional |
||
95 | * resources needed by your rules (extra properties, database connection settings, container, and etc). |
||
96 | * |
||
97 | * @param array $blocks |
||
98 | * |
||
99 | * @return ContextStorageInterface |
||
100 | */ |
||
101 | 3 | protected function createContextStorageFromBlocks(array $blocks): ContextStorageInterface |
|
105 | } |
||
106 |