flatphp/validation

轻量级验证器

v1.0.0 2020-03-08 09:12 UTC

This package is auto-updated.

Last update: 2024-09-08 21:19:18 UTC


README

轻量级验证器

安装

composer require flatphp/validation

使用

use \Flatphp\Validation\Validator;

// data value
$data = ['username' => 'tom', 'email' => '', 'password' => '', 'age' => 10];

// validate rules (验证规则和错误消息)
$rules = array(
    'username' => ['required|length:3,20', array('required' => 'username required', 'length' => 'length range 3-20')],
    'email' => ['email', 'invalid email'],
    'password' => 'required'
);

// validate
$res = Validator::validate($data, $rules, $failed);

// if failed echo failed message
if (!$res) {
    echo $failed['msg'];
}


// failed is referenced value if fail, format: ['on' => 'required', 'msg' => 'username required']

失败的引用值 $failed 格式

// failed e.g.
array(
    'on' => 'required',
    'msg' => 'username required'
)

单个值验证

use \Flatphp\Validation\Validator;
$value = 'hello';
$res = Validator::validateOne($value, 'required|length:2,20', array(
    'required' => 'cannot be empty',
), $failed);

简单使用

$res = Validator::isEmail('test@gmail.com');

如何自定义自己的验证方法 加入定制自己的验证方法

  • 只需扩展 Validator 类并添加自己的方法(继承)
  • 或者只需编写全局函数(写全局函数) 注意: 方法|函数的格式应该是这样的,参考以下:
    方法或函数格式必须是这样的,参考以下:
function isZero($value)
{
    return $value === 0;
}

function isHasstr($value, $param)
{
    return strpos($value, $param) !== false;
}

已有方法和规则