Field Manual PHP / Laravel reference
← Security

Input validation

Validation constrains data shape, ranges, and allowed values.

What it is

Validation constrains data shape, ranges, and allowed values.

When to use it

Validate every untrusted boundary and enforce business invariants separately.

Syntax

// Bad: trust input directly
$amount = $request->input("amount_cents");
// Good:
$data = $request->validate(["amount_cents" => "required|integer|min:1|max:100000000"]);

Example

$data = $request->validate([
    "amount_cents" => "required|integer|min:1|max:100000000",
    "currency" => "required|in:USD,EUR",
]);
// Then authorize the account and check permitted balance/state.

Common mistakes

Do not confuse sanitization with validation; allowed syntax may still violate a business rule.

Related topics

ValidationValidation