one 1.4.6 新增参数验证器
一个极简的高性能框架。支持在swoole
协程环境和常规的apache
,php-fpm
下运行
github:https://github.com/lizhichao/one
基本使用方法
$_POST = [
'email' => 'xxxx',
'age' => 2
];
$vt = new Validator();
$result = $vt->setAliases([
'name' => '用户名',
'email' => '邮箱',
'age' => '年龄'
])->validate($_POST, [
'name' => 'required|min_len:5,max_len:10', // 必填 5<= strlen(name) <=10
'email' => 'required|email', // 必填 email 格式
'age' => 'uint|min:18|max:200' // 选填 正整数 18<= age <=200
])->isOk();
if ($result === false) {
print_r($vt->getErrs());
}
//Array
//(
// [0] => 用户名不能为空
// [1] => 邮箱格式不正确
// [2] => 年龄不能小于18
//)
内置规则
- required 必填
- numeric 数字包括浮点数
- min 不能小于
- max 不能大于
- min_len 不能短于
- max_len 不能长于
- int 整数
- uint 正整数 // 1.9.3以前叫 unsigned_int
- email 邮箱格式
- ip ip格式
- stop 阻止冒泡(当有一条规则不符合时,不验证剩下的规则)
如果不够? 可自定义规则
$vt->addRule('between', [
'msg' => ':attribute只能在:arg1-:arg2之间',
'fn' => function ($value, $arg1, $arg2) {
return $value >= $arg1 && $value <= $arg2;
}
]);
$vt->validate(['a' => 10], [
'a' => 'required|between:3,10' //必填 只能在3-10
]);
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。