Download the PHP package ianaleck/guard without Composer
On this page you can find all versions of the php package ianaleck/guard. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download ianaleck/guard
More information about ianaleck/guard
Files in ianaleck/guard
Package guard
Short Description Guard is an easy to use, highly customisable PHP validator.
License MIT
Homepage https://github.com/ianaleck/guard
Informations about the package guard
guard
Guard is an easy to use, highly customisable PHP validator.
Installing
Install using Composer.
composer require ianaleck/guard
Basic usage
Adding custom rules
Adding custom rules is simple. If the closure returns false, the rule fails.
Adding custom error messages
You can add rule messages, or field messages for total flexibility.
Adding a rule message
Adding rule messages in bulk
Adding a field message
Any field messages you add are used before any default or custom rule messages.
Adding field messages in bulk
Using Field Aliases
Field Aliases helps you format any error messages without showing weird form names or the need to create a custom error.
Extending Guard
You can extend the Guard class to add custom rules, rule messages and field messages. This way, you can keep a tidy class to handle custom validation if you have any dependencies, like a database connection or language files.
Rules
This list of rules are in progress. Of course, you can always contribute to the project if you'd like to add more to the base ruleset.
alnum
If the value is alphanumeric.
alnumDash
If the value is alphanumeric. Dashes and underscores are permitted.
alpha
If the value is alphabetic letters only.
alphaDash
If the value is alphabetic letters only. Dashes and underscores are permitted.
array
If the value is an array.
between(int, int)
Checks if the value is within the intervals defined. This check is inclusive, so 5 is between 5 and 10.
bool
If the value is a boolean.
If the value is a valid email.
int
If the value is an integer, including numbers within strings. 1 and '1' are both classed as integers.
number
If the value is a number, including numbers within strings.
Numeric strings consist of optional sign, any number of digits, optional decimal part and optional exponential part. Thus +0123.45e6 is a valid numeric value. Hexadecimal (e.g. 0xf4c3b00c), Binary (e.g. 0b10100111001), Octal (e.g. 0777) notation is allowed too but only without sign, decimal and exponential part.
ip
If the value is a valid IP address.
min(int, [number])
Check if string length is greater than or equal to given int
. To check the size of a number, pass the optional number
option.
max(int, [number])
Check if string length is less than or equal to given int
. To check the size of a number, pass the optional number
option.
required
If the value is present.
url
If the value is formatted as a valid URL.
matches(field)
Checks if one given input matches the other. For example, checking if password matches password_confirm.
date
If the given input is a valid date.
You can validate human readable dates like '25th October 1961' and instances of DateTime
. For example:
checked
If a field has been 'checked' or not, meaning it contains one of the following values: 'yes', 'on', '1', 1, true, or 'true'. This can be used for determining if an HTML checkbox has been checked.
regex(expression)
If the given input has a match for the regular expression given.
Contributing
Please file issues under GitHub, or submit a pull request if you'd like to directly contribute.
Running tests
Tests are run with phpunit. Run ./vendor/bin/phpunit
to run tests.
Note: This package is under heavy development and is not recommended for production.