respect-validation/docs/rules/Decimal.md
Henrique Moody 951c16e8e6
Refactor the NotEmoji rule
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 `NotEmoji` and rename it to `Emoji`. It
will no longer check if the string contains emojis, but rather if the
string is an emoji or not. I’m also adding support to more emojis, since
the rule was a bit outdated.

This change will make the validator more strict, but will make it useful
in other scenarios. However, later on, I would like to create a rule
called `has` which, could use a validator like `Emoji` to check if the
input _has_ emojis.

Assisted-by: Cursor (claude-4.5-opus-high)
2025-12-29 11:16:25 +01:00

1.8 KiB

Decimal

  • Decimal(int $decimals)

Validates whether the input matches the expected number of decimals.

v::decimals(2)->isValid('27990.50'); // true
v::decimals(1)->isValid('27990.50'); // false
v::decimal(1)->isValid(1.5); // true

Known limitations

When validating float types, it is not possible to determine the amount of ending zeros and because of that, validations like the ones below will pass.

v::decimal(1)->isValid(1.50); // true

Templates

Decimal::TEMPLATE_STANDARD

Mode Template
default {{subject}} must have {{decimals}} decimals
inverted {{subject}} must not have {{decimals}} decimals

Template placeholders

Placeholder Description
decimals
subject The validated input or the custom validator name (if specified).

Categorization

  • Numbers

Changelog

Version Description
2.2.4 Float values with trailing zeroes are now valid
2.0.0 Created

See also: