mirror of
https://github.com/Respect/Validation.git
synced 2026-03-16 23:35:45 +01:00
Since we have the ability to use `not` as a prefix, having rules that validate negative behaviour makes them a bit inflexible, verbose, and harder to understand. This commit will refactor the `NotEmpty`, and rename it to `Falsy`. It will no longer trim strings, because Blank does a much better job at it; it only simulates the behaviour of PHP’s native `empty()` function. Because `Falsy`, `Blank`, and `Undef` have similar behaviour, I created a page to demonstrate the difference and show when the user should use one or the other. Assisted-by: Cursor (claude-4.5-opus-high)
1.8 KiB
1.8 KiB
Undef
Undef()
Validates if the given input is undefined. By undefined we consider null or an empty string ('').
We recommend you to check Comparing empty values for more details.
v::undef()->isValid(''); // true
v::undef()->isValid(null); // true
Other values similar to undefined values are considered defined:
v::undef()->isValid([]); // false
v::undef()->isValid(' '); // false
v::undef()->isValid(0); // false
v::undef()->isValid('0'); // false
v::undef()->isValid('0.0'); // false
v::undef()->isValid(false); // false
v::undef()->isValid(['']); // false
v::undef()->isValid([' ']); // false
v::undef()->isValid([0]); // false
v::undef()->isValid(['0']); // false
v::undef()->isValid([false]); // false
v::undef()->isValid([[''], [0]]); // false
v::undef()->isValid(new stdClass()); // false
Templates
Undef::TEMPLATE_STANDARD
| Mode | Template |
|---|---|
default |
{{subject}} must be undefined |
inverted |
{{subject}} must be defined |
Template placeholders
| Placeholder | Description |
|---|---|
subject |
The validated input or the custom validator name (if specified). |
Categorization
- Miscellaneous
Changelog
| Version | Description |
|---|---|
| 3.0.0 | Renamed to Undef and changed the behavior |
| 1.0.0 | Created as NotOptional |
See also: