mirror of
https://github.com/Respect/Validation.git
synced 2026-03-17 07:45:45 +01:00
The `{{name}}` placeholder could represent different things depending on
the state of the Result, and referring to it as `{{name}}` seems
arbitrary. This commit changes it to `{{subject}}`, which is much more
generic and it describes well what that placeholder can mean.
1.7 KiB
1.7 KiB
OneOf
OneOf(Rule $rule1, Rule $rule2, Rule ...$rule)
Will validate if exactly one inner validator passes.
v::oneOf(v::digit(), v::alpha())->isValid('AB'); // true
v::oneOf(v::digit(), v::alpha())->isValid('12'); // true
v::oneOf(v::digit(), v::alpha())->isValid('AB12'); // false
v::oneOf(v::digit(), v::alpha())->isValid('*'); // 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.
Templates
OneOf::TEMPLATE_NONE
Used when none of the rules have passed.
| Mode | Template |
|---|---|
default |
{{subject}} must pass one of the rules |
inverted |
{{subject}} must pass one of the rules |
OneOf::TEMPLATE_MORE_THAN_ONE
Used when more than one rule has passed.
| Mode | Template |
|---|---|
default |
{{subject}} must pass only one of the rules |
inverted |
{{subject}} must pass only one of the rules |
Template placeholders
| Placeholder | Description |
|---|---|
subject |
The validated input or the custom validator name (if specified). |
Categorization
- Composite
- Nesting
Changelog
| Version | Description |
|---|---|
| 3.0.0 | Require at least two rules to be passed |
| 0.3.9 | Created |
See also: