// 定义数据验证规则
protected $rule = [
    'name'  => 'require|max:20',
    'age'   => 'number|between:1,100',
    'email' => 'email',
];

// 定义验证失败的提示信息
protected $message = [
    'name.require' => '姓名必填',
    'name.max'     => '姓名最多不能超过20个字符',
    'age.number'   => '年龄必须是数字',
    'age.between'  => '年龄只能在1-100之间',
    'email.email'  => '邮箱格式不正确',
];

// 验证数据
public function validateData($data)
{
    $validate = new \think\Validate($this->rule, $this->message);
    if (!$validate->check($data)) {
        return $validate->getError();
    }
    return true;
}

// 使用示例
$data = [
    'name'  => 'John',
    'age'   => 25,
    'email' => 'john@example.com',
];

$result = validateData($data);
if ($result === true) {
    echo "数据验证通过";
} else {
    echo $result;
}

ThinkPHP框架中的数据验证器是一个非常实用的组件,可以有效地对用户输入的数据进行校验,确保数据的合法性和正确性。

在上面的示例中,我们首先定义了一组数据验证规则,包括姓名必填、姓名最多不能超过20个字符、年龄必须是数字、年龄只能在1-100之间、邮箱格式不正确等规则。

接着,我们定义了验证失败的提示信息,用于在验证不通过时反馈给用户清晰明了的提示。

我们通过实例化`think\Validate`类,并传入之前定义的规则和提示信息,创建了一个数据验证器对象。

在实际使用时,我们只需调用`check`方法,传入需要验证的数据,并根据验证结果进行后续处理。

通过使用ThinkPHP框架提供的数据验证器,我们可以轻松实现数据的合法性校验,提升系统的安全性和稳定性。