Skip to content

liyuze/validator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

简介

PHP 语言的参数验证器和挂载器。

安装

//file:compose.json
{
    "require": {
        "liyuze/parameter-validator": "dev-master"
    }
}
compose update

compose require liyuze/parameter-validator dev-master

示例

参数集合对象初始化

  1. 单一指定

    function func ($name, $age) {
        $Parameters = new liyuze\validator\Parameters\Parameters([
            'name' => $name,
            'age'> $age,
        ]);
    }
  2. 数组指定

    $Parameters = new liyuze\validator\Parameters\Parameters($_POST);

验证器

验证规则设置

  1. 设置验证规则

    $Parameters->setRule([
        'name' => 'required|string|maxLength=15|minLength=5',
        'age' => 'integer|max=120|min=1'
    ]);
  2. 参数和验证规则一同设置

    $name = $_POST['name'];
    $age = $_POST['age'];
    
    $Parameters = new liyuze\validator\Parameters\Parameters();
    $Parameters->config([
        'name' => [$name, ['required', 'string', 'maxLength' => 15, 'minLength' => 5]],
        'age' => [$age, ['integer', 'max' => 120, 'min' => 1]]
    ]);

验证和验证消息

if ($Parameters->validate()) {
    //所有验证消息
    $Parameters->getErrors();
}

验证消息

挂载器

新增自定义挂载器

/**
 * 由年龄获取生肖、出生年份
 */
class AgeMounter extends liyuze\validator\Mounter\Mounter {
    
    public function registerKeys()
    {
        //挂载值的变量名
        return ['year', 'zodiac']
    }

    public function run()
    {
        //参数值
        $value = $this->getParameter()->getValue();
        //计算值
        $year = 2018;
        $zodiac = 'dog';
        //挂载值
        return [
            'year' => $year,
            'zodiac' => $zodiac
        ]
    }
}

挂载器配置

$Parameters->addMounter('age', 'mounter\AgeMounter')

获取挂载值

//获取出生年份
$year = $Parameters->getMounteValue('age', 'year');

//获取属相
$zodiac = $Parameters->getParam('age')->getMounteValue('zodiac');

About

PHP 语言的参数验证器和挂载器。

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy