respect-validation/docs/rules/OneOf.md
Henrique Moody 0417fea213
Fix confusion with some changelogs
The changelogs that this commit will change are confusing. From a code
perspective, the rule Date was renamed to DateTime, and OneOf was
renamed to AnyOf, but because we also created a Date and OneOf rule with
different behaviours, it makes more sense to say that their behaviour
changed, rather than saying that they were created in version 2.0.0.

Signed-off-by: Henrique Moody <henriquemoody@gmail.com>
2019-05-11 21:44:44 +02:00

36 lines
749 B
Markdown

# OneOf
- `OneOf(Validatable ...$rule)`
Will validate if exactly one inner validator passes.
```php
v::oneOf(v::digit(), v::alpha())->validate('AB'); // true
v::oneOf(v::digit(), v::alpha())->validate('12'); // true
v::oneOf(v::digit(), v::alpha())->validate('AB12'); // false
v::oneOf(v::digit(), v::alpha())->validate('*'); // false
```
The chains above validate if the input is either a digit or an alphabetic
character, one or the other, but not neither nor both.
## Categorization
- Composite
- Nesting
## Changelog
Version | Description
--------|-------------
2.0.0 | Changed to pass if only one inner validator passes
0.3.9 | Created
***
See also:
- [AllOf](AllOf.md)
- [AnyOf](AnyOf.md)
- [NoneOf](NoneOf.md)
- [When](When.md)