respect-validation/docs/validators/Alnum.md
Alexandre Gomes Gaigalas 2a7f345e32 Streamline validators.md index
Makes it so the index looks more like a cheatsheet, condensing
information instead of making long lists that require lots of
scrolling to explore.

Additionally, the happy path for each validator was also
added, providing a quick reference use for comparison.

The direct markdown links were replaced by titled markdown
references, offering mouse-over tooltips over links that
display the validator one-line description.

To ensure a proper source of truth for these new index
goodies, the AssertionMessageLinter was modified to
verify that the first assertion in each doc is a
single-line validator that passes (a happy path), further
making our documentation conventions more solid.
2026-01-28 12:47:08 +00:00

2.8 KiB

Alnum

  • Alnum()
  • Alnum(string ...$additionalChars)

Validates whether the input is alphanumeric or not.

Alphanumeric is a combination of alphabetic (a-z and A-Z) and numeric (0-9) characters.

v::alnum(' ')->assert('foo 123');
// Validation passes successfully

v::alnum()->assert('foo 123');
// → "foo 123" must contain only letters (a-z) and digits (0-9)

v::alnum()->assert('100%');
// → "100%" must contain only letters (a-z) and digits (0-9)

v::alnum('%')->assert('100%');
// Validation passes successfully

v::alnum('%', ',')->assert('10,5%');
// Validation passes successfully

You can restrict case using the Lowercase and Uppercase validators.

v::alnum()->uppercase()->assert('example');
// → "example" must contain only uppercase letters

Message template for this validator includes {{additionalChars}} as the string of extra chars passed as the parameter.

Templates

Alnum::TEMPLATE_STANDARD

Mode Template
default {{subject}} must contain only letters (a-z) and digits (0-9)
inverted {{subject}} must not contain letters (a-z) or digits (0-9)

Alnum::TEMPLATE_EXTRA

Mode Template
default {{subject}} must contain only letters (a-z), digits (0-9), and {{additionalChars}}
inverted {{subject}} must not contain letters (a-z), digits (0-9), or {{additionalChars}}

Template placeholders

Placeholder Description
additionalChars Additional characters that are considered valid.
subject The validated input or the custom validator name (if specified).

Categorization

  • Strings

Changelog

Version Description
2.0.0 Removed support to whitespaces by default
0.3.9 Created

See Also