PHP code example of angletf / php-verify

1. Go to this page and download the library: Download angletf/php-verify library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

angletf / php-verify example snippets



use angletf\Verify;

const EType = new Exception("参数类型错误", 1);
const ERequire = new Exception("参数没有传入", 2);
const EFormat = new Exception("参数格式不正确", 3);
const ELen = new Exception("name参数长度不正确", 4);


$rule = [
    'age' => [
        //age参数不是必传, 如果没有传入 设置默认值为 '99'
        //也可以将默认值设置为 `NULL` 在程序中进行判断
        'lue' => '/^\w+$/',
            'error' => EFormat
        ],
        'min' => [
            'value' => 1,
            'error' => ELen
        ],
        'max' => [
            'value' => 20,
            'error' => ELen
        ],
    ],
];

//伪造一个post请求
$_POST = [
    'name' => 'tao',
    'age' => '22'
];



try {
    
    //注册规则, 并且返回实例
    $instance = Verify::registerRule($rule);

    //第一个参数是需要验证的数组($_POST, $_GET)
    //第二个参数是需要验证哪些参数
    //第三个参数是按照第二个参数的顺序返回参数, 是一个引用类型
    //如果验证失败, 则输出规则中对应的信息
    if (!$instance->checkParams($_POST, ['name', 'age', 'desc'], $args)) {
        echo $instance->getError()->getMessage();
        return;
    }

    list($name, $age, $desc) = $args;

    var_dump($name);
    var_dump($age);
    var_dump($desc);


} catch (\Exception $e) {
    //handle an exception
    echo 'Exception: ' . $e->getMessage();
}


[
    '参数名' => [
        '验证器1' => [
            'value' => '验证器1的value',
            'error' => '当验证失败时, 验证器1返回的错误, Exception类型'
        ],
        '验证器2' => [
        ...
        ]
    ]
    ...
]


if (!$instance->checkParams($_POST, ['name', 'age', 'desc'], $args)) {
    //返回你在规则中提供的 error => \Exception
    var_dump($instance->getError());
    return;
}

composer