# 示例
[TOC]
>引類為直接引用thinkphp5.1的類庫驗證方法也可以參考官方文檔
``` php
namespace validate;
use ank\Validate;
/**
* api驗證類
*/
class Example extends Validate
{
//對指定字段進行規則驗證
protected $rule = [
//必填項,純字母,最大25個字符,并且不能重復
'title' => 'require|alpha|max:25|unique:Form',
//驗證某個字段的值是否為字母和數字,下劃線_及破折號-,alphaNum 字母和數據
'name' => 'alphaDash',
//純數字,在0到100之間 相反使用 notBetween
'sort' => 'number|between:0,100',
// 驗證某個字段的值是否為浮點數字(采用filter_var驗證),例如:
'sort' => 'float',
// 驗證某個字段的值是否為email地址(采用filter_var驗證),例如:
'email' => 'email',
'title' => 'require|max:25|unique:Menu',
//只能是漢字且長度在6到20之間,
//chsAlpha漢字字母
//chsDash 驗證某個字段的值只能是漢字、字母、數字和下劃線_及破折號-
//chsAlphaNum 驗證某個字段的值只能是漢字、字母和數字,例如:
'username' => 'chs|length:6,20',
// 驗證某個字段的值是否在某個范圍,例如:相反使用 notIn
'num' => 'in:1,2,3',
//驗證是否為指定日期格式
'create_time' => 'dateFormat:y-m-d',
//是否有效身份格式
'id_card' => 'idCard', //待查證是否支持
//是否有效手機號
'mobile' => 'mobile',
//驗證兩個字段是否一至
'repassword' => 'confirm:password',
//正則驗證
'zip' => 'regex:\d{6}',
//如果你的正則表達式中包含有|符號的話,必須使用數組方式定義。
'accepted' => ['regex' => '/^(yes|on|1)$/i'],
'nickname' => 'require|length:2,20',
'user_group_id' => 'require|number',
'pid' => 'gt:0',
];
//如果驗證不通過后提示的信息
protected $message = [
'title.require' => '表單標題不能為空',
'title.unique' => '表單標題已經存在',
'name.alphaDash' => '數據表一定要是字母',
'name.max' => '數據表最多不能超過25個字符',
'name.unique' => '數據表名字已經存在',
'sort.number' => '排序必須是數字',
'sort.between' => '排序只能在0-100之間',
];
//設置驗證場景,只對指定字段進行驗證
protected $scene = [
'add' => ['name', 'email'],
'edit' => [
'title' => 'require|max:25',
'name' => 'alphaDash|max:25',
'sort' => 'number|between:0,100',
],
];
}
```
使用方法
``` php
$data=$_POST;
$vali=new Example();
$result=$vali->scene('edit')->check($data);
if($result){
//......
}else{
//取錯誤信息
$vali->getError();
}
```