mirror of
https://github.com/Respect/Validation.git
synced 2026-03-15 23:05:45 +01:00
Since I updated the validation engine[1], it became possible to create results with subsequents[2]. This commit changes the "Length", allowing it to create a result with a subsequent only when it's possible. That will improve the clarity of the error messages. [1]:238f2d506a[2]:52e628fc6f
2.1 KiB
2.1 KiB
Length
Length(Rule $rule)
Validates the length of the given input against a given rule.
v::length(v::between(1, 5))->isValid('abc'); // true
v::length(v::greaterThan(5))->isValid('abcdef'); // true
v::length(v::lessThan(5))->isValid('abc'); // true
This rule can be used to validate the length of strings, arrays, and objects that implement the Countable interface.
v::length(v::greaterThanOrEqual(3))->isValid([1, 2, 3]); // true
v::length(v::equals(0))->isValid(new SplPriorityQueue()); // true
Templates
Length::TEMPLATE_STANDARD
Used when it's possible to get the length of the input.
| Mode | Template |
|---|---|
default |
The length of |
inverted |
The length of |
This template serve as message prefixes.:
v::length(v::equals(3))->assert('tulip');
// Message: The length of "tulip" must be equal to 3
v::not(v::length(v::equals(4)))->assert('rose');
// Message: The length of "rose" must not be equal to 4
Length::TEMPLATE_WRONG_TYPE
Used when it's impossible to get the length of the input.
| Mode | Template |
|---|---|
default |
{{name}} must be a countable value or a string |
inverted |
{{name}} must not be a countable value or a string |
Template placeholders
| Placeholder | Description |
|---|---|
name |
The validated input or the custom validator name (if specified). |
Categorization
- Comparisons
- Transformations
Changelog
| Version | Description |
|---|---|
| 3.0.0 | Became a transformation |
| 0.3.9 | Created |
See also: