Simple Validate Process

use Windwalker\Validator\Rule\EmailValidator;

$validator = new EmailValidator();

$validator->validate('sakura@flower.com'); // bool(true)

$validator->validate('sakura'); // bool(false)
Available Validator Rules
  • AlnumValidator
  • BooleanValidator
  • ColorValidator
  • CreditcardValidator
  • EmailValidator
  • EqualsValidator
  • IpValidator
  • NoneValidator
  • PhoneValidator
  • RegexValidator
  • UrlValidator
  • CallbackValidator
  • CompareValidator
  • PhpTypeValidator

Regex Validator

use Windwalker\Validator\Rule\RegexValidator;

$validator = new RegexValidator('^[a-zA-Z0-9]*$', 'i');

$validator->validate('abc_123:978'); // bool(false)

Equals Validator

use Windwalker\Validator\Rule\EqualsValidator;

$validator = new EqualsValidator('ABC');

$validator->validate('ABC'); // bool(true)

Strict Mode:

$validator = new EqualsValidator(123, true);

$validator->validate('123'); // bool(false)

Error Message

$validator->setMessage('This string is not valid');

if (!$validator->validate('sakura')) {
    throw new \Exception($validator->getError());
}

Create Your Own Validator

use Windwalker\Validator\AbstractValidator;

class MyValidator extends AbstractValidator
{
    public function test($string)
    {
        return (bool) strlen($string);
    }
}

$validator = new MyValidator();

$validator->validate('foo');

Extends Regex Validator

use Windwalker\Validator\Rule\RegexValidator;

class MyRegexValidator extends RegexValidator
{
    protected $modified = 'i';
    protected $regex = '[a-zA-Z]';
}

If you found a typo or error, please help us improve this document.