isholao/prove

PHP验证器

v1.0 2017-11-15 10:35 UTC

This package is not auto-updated.

Last update: 2024-09-29 05:27:39 UTC


README

Build Status

安装

使用composer安装

composer require isholao/prove

需要PHP 7.1或更高版本。

使用方法

以下是一个基本使用示例

<?php

require '/path/to/vendor/autoload.php';

$data = [
    'name' => 'Ishola O',
    'age' =>'100'
];

$prover = new \Prove\Prover($data);
$prover->required()->regex('[a-zA-Z ]+')->validate('name');

if($prover->hasErrors()){
    echo $prover->getAllErrors() or $prover->getError('name');
}

添加新规则

<?php

class CustomRule extends \Prove\AbstractRule 
{
    function __construct()
    {
        $this->name = 'customrule';
    }

    public function __invoke(?string $message = NULL)
    {
        $this->message = $message ?? 'Custom error goes here';
    }

    public function validate(&$val): bool
    {
        return true or false
    }
}

$data = [
    'name' => 'Ishola O',
    'age' =>'100'
];

$prover = new \Prove\Prover($data);
$prover->addRule(new CustomRule());
$prover->addRule(new class extends \Prove\AbstractRule
        {

            public function __construct()
            {
                $this->name = 'custom';
            }

            public function __invoke(?string $message = NULL)
            {
                $this->message = $message ?? 'Custom error goes here.';
            }

            public function validate(&$val): bool
            {
                return false;
            }
        });
$prover->customrule('optional error message goes here or use default')->validate('name','Label goes here');