#### Validate
~~~
/**
* 构造函数
* @access public
* @param array $rules 验证规则
* @param array $message 验证提示信息
* @param array $field 验证字段描述信息
*/
$validate = new Validate(array $rules = [], $message = [], $field = []);
/**
* 实例化验证
* @access public
* @param array $rules 验证规则
* @param array $message 验证提示信息
* @param array $field 验证字段描述信息
* @return Validate
*/
Validate::make($rules = [], $message = [], $field = []);
/**
* 添加字段验证规则
* @access protected
* @param string|array $name 字段名称或者规则数组
* @param mixed $rule 验证规则
* @return Validate
*/
$validate->rule($name, $rule = '');
/**
* 注册验证(类型)规则
* @access public
* @param string $type 验证规则类型
* @param mixed $callback callback方法(或闭包)
* @return void
*/
Validate::extend($type, $callback = null);
/**
* 获取验证规则的默认提示信息
* @access protected
* @param string|array $type 验证规则类型名称或者数组
* @param string $msg 验证提示信息
* @return void
*/
Validate::setTypeMsg($type, $msg = null);
/**
* 设置提示信息
* @access public
* @param string|array $name 字段名称
* @param string $message 提示信息
* @return Validate
*/
$validate->message($name, $message = '');
/**
* 设置验证场景
* @access public
* @param string|array $name 场景名或者场景设置数组
* @param mixed $fields 要验证的字段
* @return Validate
*/
$validate->scene($name, $fields = null);
/**
* 判断是否存在某个验证场景
* @access public
* @param string $name 场景名
* @return bool
*/
$validate->hasScene($name);
/**
* 设置批量验证
* @access public
* @param bool $batch 是否批量验证
* @return Validate
*/
$validate->batch($batch = true);
/**
* 数据自动验证
* @access public
* @param array $data 数据
* @param mixed $rules 验证规则
* @param string $scene 验证场景
* @return bool
*/
$validate->check($data, $rules = [], $scene = '');
/**
* 验证单个字段规则
* @access protected
* @param string $field 字段名
* @param mixed $value 字段值
* @param mixed $rules 验证规则
* @param array $data 数据
* @param string $title 字段描述
* @param array $msg 提示信息
* @return mixed
*/
$this->checkItem($field, $value, $rules, $data, $title = '', $msg = []);
/**
* 验证是否和某个字段的值一致
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @param array $data 数据
* @param string $field 字段名
* @return bool
*/
$this->confirm($value, $rule, $data, $field = '');
/**
* 验证是否和某个字段的值是否不同
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @param array $data 数据
* @return bool
*/
$this->different($value, $rule, $data);
/**
* 验证是否大于等于某个值
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->egt($value, $rule);
/**
* 验证是否大于某个值
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->gt($value, $rule);
/**
* 验证是否小于等于某个值
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->elt($value, $rule);
/**
* 验证是否小于某个值
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->lt($value, $rule);
/**
* 验证是否等于某个值
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->eq($value, $rule);
/**
* 验证字段值是否为有效格式
* @access protected
* @param mixed $value 字段值
* @param string $rule 验证规则
* @param array $data 验证数据
* @return bool
*/
$this->is($value, $rule, $data = []);
// 判断图像类型
$this->getImageType($image);
/**
* 验证是否为合格的域名或者IP 支持A,MX,NS,SOA,PTR,CNAME,AAAA,A6, SRV,NAPTR,TXT 或者 ANY类型
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->activeUrl($value, $rule);
/**
* 验证是否有效IP
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则 ipv4 ipv6
* @return bool
*/
$this->ip($value, $rule);
/**
* 验证上传文件后缀
* @access protected
* @param mixed $file 上传文件
* @param mixed $rule 验证规则
* @return bool
*/
$this->fileExt($file, $rule);
/**
* 验证上传文件类型
* @access protected
* @param mixed $file 上传文件
* @param mixed $rule 验证规则
* @return bool
*/
$this->fileMime($file, $rule);
/**
* 验证上传文件大小
* @access protected
* @param mixed $file 上传文件
* @param mixed $rule 验证规则
* @return bool
*/
$this->fileSize($file, $rule);
/**
* 验证图片的宽高及类型
* @access protected
* @param mixed $file 上传文件
* @param mixed $rule 验证规则
* @return bool
*/
$this->image($file, $rule);
/**
* 验证请求类型
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->method($value, $rule);
/**
* 验证时间和日期是否符合指定格式
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->dateFormat($value, $rule);
/**
* 验证是否唯一
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则 格式:数据表,字段名,排除ID,主键名
* @param array $data 数据
* @param string $field 验证字段名
* @return bool
*/
$this->unique($value, $rule, $data, $field);
/**
* 使用行为类验证
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @param array $data 数据
* @return mixed
*/
$this->behavior($value, $rule, $data);
/**
* 使用filter_var方式验证
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->filter($value, $rule);
/**
* 验证某个字段等于某个值的时候必须
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @param array $data 数据
* @return bool
*/
$this->requireIf($value, $rule, $data);
/**
* 通过回调方法验证某个字段是否必须
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @param array $data 数据
* @return bool
*/
$this->requireCallback($value, $rule, $data);
/**
* 验证某个字段有值的情况下必须
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @param array $data 数据
* @return bool
*/
$this->requireWith($value, $rule, $data);
/**
* 验证是否在范围内
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->in($value, $rule);
/**
* 验证是否不在某个范围
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->notIn($value, $rule);
/**
* between验证数据
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->between($value, $rule);
/**
* 使用notbetween验证数据
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->notBetween($value, $rule);
/**
* 验证数据长度
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->length($value, $rule);
/**
* 验证数据最大长度
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->max($value, $rule);
/**
* 验证数据最小长度
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->min($value, $rule);
/**
* 验证日期
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->after($value, $rule);
/**
* 验证日期
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->before($value, $rule);
/**
* 验证有效期
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @return bool
*/
$this->expire($value, $rule);
/**
* 验证IP许可
* @access protected
* @param string $value 字段值
* @param mixed $rule 验证规则
* @return mixed
*/
$this->allowIp($value, $rule);
/**
* 验证IP禁用
* @access protected
* @param string $value 字段值
* @param mixed $rule 验证规则
* @return mixed
*/
$this->denyIp($value, $rule);
/**
* 使用正则验证数据
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则 正则规则或者预定义正则名
* @return mixed
*/
$this->regex($value, $rule);
/**
* 验证表单令牌
* @access protected
* @param mixed $value 字段值
* @param mixed $rule 验证规则
* @param array $data 数据
* @return bool
*/
$this->token($value, $rule, $data);
// 获取错误信息
$validate->getError();
/**
* 获取数据值
* @access protected
* @param array $data 数据
* @param string $key 数据标识 支持二维
* @return mixed
*/
$this->getDataValue($data, $key);
/**
* 获取验证规则的错误提示信息
* @access protected
* @param string $attribute 字段英文名
* @param string $title 字段描述名
* @param string $type 验证规则名称
* @param mixed $rule 验证规则数据
* @return string
*/
$this->getRuleMsg($attribute, $title, $type, $rule);
/**
* 获取数据验证的场景
* @access protected
* @param string $scene 验证场景
* @return array
*/
$this->getScene($scene = '');
Validate::__callStatic($method, $params);
~~~