PHP code example of soft35 / fend-plugin-validator

1. Go to this page and download the library: Download soft35/fend-plugin-validator 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/ */

    

soft35 / fend-plugin-validator example snippets



//演示输入参数
$param = [
    "must"     => true,
    "string"   => "wahahah",
    "int"      => "3244",
    "float"    => "43.6",
    "double"   => "123.1",
    "email"    => "[email protected]",
    "enum"     => "yes",
    "callback" => "ahaha",
];
//创建验证类,提供当前接口网址及功能介绍,及获取参数方式method(GET\POST等)
//当请求本接口附带tal_sec=show_param_json时,会输出下面录入的所有参数信息json格式,用于生成wiki
$validate = new \Fend\ValidateFilter("http://www.test.php/user/info", "根据学生id查找学生信息", "get");

//用于生成接口文档返回结果,demo请求参数,可以提供多组,每组体现不同情况
$validate->addDemoParameter([["uid" => 12312], ["uid" => 123]]);

//接口参数规则
//bool检测
$validate->addRule("must", "bool", "bool类型,必填字段", true);
//int检测,只是检测内容是否都为数字,类型不检测,不转换预防超长int被转换溢出
$validate->addRule("default", "int", "int类型,非必填,默认1", false, 1);
//字符串检测
$validate->addRule("string", "string", "用户uid", false, "", [1, 10]);
$validate->addRule("int", "int", "用户uid的int写法", false, "", [1, 20000]);
//浮点检测,返回结果不转类型成float防止丢失精度
$validate->addRule("float", "float", "float类型", false, "", [1, 20000]);
$validate->addRule("double", "double", "double", false, "", [1, 20000]);
$validate->addRule("email", "email", "email检测", false);
//用户输入项,必须是可选范围内选项
$validate->addRule("enum", "enum", "enum检测:yes代表xx,no代表xx", false, "", ["yes", "no"]);

//闭包自定义参数校验规则
$callback = function ($key, $val) {
    if ($val != "ahaha") {
        throw new \Exception("嗯错误了");
    }
    return $val;
};

$validate->addRule("callback", "callback", "用户回调规则", false, "", $callback);

//自定义错误提示信息及错误码
$message = [
            "must.


 $rules = array(
    'name' => 'alpha|-必须的', 
    'color' => 'optional--非必填|min:5--最小长度为5'
 );
 list($valdi_data,$errors) = validate($_POST, $rules);
bash
 composer