|
1
|
|
|
<?php |
|
2
|
|
|
// +---------------------------------------------------------------------- |
|
|
|
|
|
|
3
|
|
|
// | ThinkPHP [ WE CAN DO IT JUST THINK ] |
|
4
|
|
|
// +---------------------------------------------------------------------- |
|
5
|
|
|
// | Copyright (c) 2006~2019 http://thinkphp.cn All rights reserved. |
|
6
|
|
|
// +---------------------------------------------------------------------- |
|
7
|
|
|
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) |
|
8
|
|
|
// +---------------------------------------------------------------------- |
|
9
|
|
|
// | Author: liu21st <[email protected]> |
|
10
|
|
|
// +---------------------------------------------------------------------- |
|
11
|
|
|
|
|
12
|
|
|
namespace think\facade; |
|
13
|
|
|
|
|
14
|
|
|
use think\Facade; |
|
15
|
|
|
|
|
16
|
|
|
/** |
|
|
|
|
|
|
17
|
|
|
* @see \think\Validate |
|
|
|
|
|
|
18
|
|
|
* @mixin \think\Validate |
|
|
|
|
|
|
19
|
|
|
* @method \think\Validate rule(mixed $name, mixed $rule = '') static 添加字段验证规则 |
|
20
|
|
|
* @method void extend(string $type, callable $callback = null, string $message='') static 注册扩展验证(类型)规则 |
|
21
|
|
|
* @method void setTypeMsg(mixed $type, string $msg = null) static 设置验证规则的默认提示信息 |
|
22
|
|
|
* @method \think\Validate message(mixed $name, string $message = '') static 设置提示信息 |
|
23
|
|
|
* @method \think\Validate scene(string $name) static 设置验证场景 |
|
24
|
|
|
* @method bool hasScene(string $name) static 判断是否存在某个验证场景 |
|
25
|
|
|
* @method \think\Validate batch(bool $batch = true) static 设置批量验证 |
|
26
|
|
|
* @method \think\Validate only(array $fields) static 指定需要验证的字段列表 |
|
27
|
|
|
* @method \think\Validate remove(mixed $field, mixed $rule = true) static 移除某个字段的验证规则 |
|
28
|
|
|
* @method \think\Validate append(mixed $field, mixed $rule = null) static 追加某个字段的验证规则 |
|
29
|
|
|
* @method bool confirm(mixed $value, mixed $rule, array $data = [], string $field = '') static 验证是否和某个字段的值一致 |
|
30
|
|
|
* @method bool different(mixed $value, mixed $rule, array $data = []) static 验证是否和某个字段的值是否不同 |
|
31
|
|
|
* @method bool egt(mixed $value, mixed $rule, array $data = []) static 验证是否大于等于某个值 |
|
32
|
|
|
* @method bool gt(mixed $value, mixed $rule, array $data = []) static 验证是否大于某个值 |
|
33
|
|
|
* @method bool elt(mixed $value, mixed $rule, array $data = []) static 验证是否小于等于某个值 |
|
34
|
|
|
* @method bool lt(mixed $value, mixed $rule, array $data = []) static 验证是否小于某个值 |
|
35
|
|
|
* @method bool eq(mixed $value, mixed $rule) static 验证是否等于某个值 |
|
36
|
|
|
* @method bool must(mixed $value, mixed $rule) static 必须验证 |
|
37
|
|
|
* @method bool is(mixed $value, mixed $rule, array $data = []) static 验证字段值是否为有效格式 |
|
38
|
|
|
* @method bool ip(mixed $value, mixed $rule) static 验证是否有效IP |
|
39
|
|
|
* @method bool requireIf(mixed $value, mixed $rule) static 验证某个字段等于某个值的时候必须 |
|
40
|
|
|
* @method bool requireCallback(mixed $value, mixed $rule,array $data) static 通过回调方法验证某个字段是否必须 |
|
41
|
|
|
* @method bool requireWith(mixed $value, mixed $rule, array $data) static 验证某个字段有值的情况下必须 |
|
42
|
|
|
* @method bool filter(mixed $value, mixed $rule) static 使用filter_var方式验证 |
|
43
|
|
|
* @method bool in(mixed $value, mixed $rule) static 验证是否在范围内 |
|
44
|
|
|
* @method bool notIn(mixed $value, mixed $rule) static 验证是否不在范围内 |
|
45
|
|
|
* @method bool between(mixed $value, mixed $rule) static between验证数据 |
|
46
|
|
|
* @method bool notBetween(mixed $value, mixed $rule) static 使用notbetween验证数据 |
|
47
|
|
|
* @method bool length(mixed $value, mixed $rule) static 验证数据长度 |
|
48
|
|
|
* @method bool max(mixed $value, mixed $rule) static 验证数据最大长度 |
|
49
|
|
|
* @method bool min(mixed $value, mixed $rule) static 验证数据最小长度 |
|
50
|
|
|
* @method bool after(mixed $value, mixed $rule) static 验证日期 |
|
51
|
|
|
* @method bool before(mixed $value, mixed $rule) static 验证日期 |
|
52
|
|
|
* @method bool expire(mixed $value, mixed $rule) static 验证有效期 |
|
53
|
|
|
* @method bool allowIp(mixed $value, mixed $rule) static 验证IP许可 |
|
54
|
|
|
* @method bool denyIp(mixed $value, mixed $rule) static 验证IP禁用 |
|
55
|
|
|
* @method bool regex(mixed $value, mixed $rule) static 使用正则验证数据 |
|
56
|
|
|
* @method bool token(mixed $value, mixed $rule) static 验证表单令牌 |
|
57
|
|
|
* @method bool dateFormat(mixed $value, mixed $rule) static 验证时间和日期是否符合指定格式 |
|
58
|
|
|
* @method bool unique(mixed $value, mixed $rule, array $data = [], string $field = '') static 验证是否唯一 |
|
59
|
|
|
* @method bool check(array $data, mixed $rules = []) static 数据自动验证 |
|
60
|
|
|
* @method bool checkRule(mixed $data, mixed $rules = []) static 数据手动验证 |
|
61
|
|
|
* @method bool isNumber(mixed $data) static 验证是否为纯数字(不包含负数和小数点) |
|
62
|
|
|
* @method bool isAlpha(mixed $data) static 验证是否为纯字母 |
|
63
|
|
|
* @method bool isAlphaNum(mixed $data) static 验证是否为字母和数字 |
|
64
|
|
|
* @method bool isAlphaDash(mixed $data) static 验证是否为字母和数字,以及下划线_和破折号- |
|
65
|
|
|
* @method bool isChs(mixed $data) static 验证是否为中文 |
|
66
|
|
|
* @method bool isChsAlpha(mixed $data) static 验证是否为中文和字母 |
|
67
|
|
|
* @method bool isChsAlphaNum(mixed $data) static 验证是否为字母和数字 |
|
68
|
|
|
* @method bool isChsDash(mixed $data) static 验证是否为中文,以及下划线_和破折号- |
|
69
|
|
|
* @method bool isCntrl(mixed $data) static 验证是否为控制字符(换行、缩进、空格) |
|
70
|
|
|
* @method bool isGraph(mixed $data) static 验证是否为可打印字符(空格除外) |
|
71
|
|
|
* @method bool isPrint(mixed $data) static 验证是否为可打印字符(包括空格) |
|
72
|
|
|
* @method bool isLower(mixed $data) static 验证是否为小写字符 |
|
73
|
|
|
* @method bool isUpper(mixed $data) static 验证是否为大写字符 |
|
74
|
|
|
* @method bool isSpace(mixed $data) static 验证是否为空白字符(包括缩进,垂直制表符,换行符,回车和换页字符) |
|
75
|
|
|
* @method bool isInteger(mixed $data) static 验证是否为整数 |
|
76
|
|
|
* @method bool isFloat(mixed $data) static 验证是否为浮点数 |
|
77
|
|
|
* @method bool isBool(mixed $data) static 验证是否为布尔值 |
|
78
|
|
|
* @method bool isEmail(mixed $data) static 验证是否为邮箱地址 |
|
79
|
|
|
* @method bool isArray(mixed $data) static 验证是否为数组 |
|
80
|
|
|
* @method bool isAccepted(mixed $data) static 验证是否为yes, on, 或是 1 |
|
81
|
|
|
* @method bool isDate(mixed $data) static 验证是否为日期格式 |
|
82
|
|
|
* @method bool isXdigit(mixed $data) static 验证是否为十六进制字符串 |
|
83
|
|
|
* @method bool isActiveUrl(mixed $data) static 验证是否为有效的域名或者IP |
|
84
|
|
|
* @method bool isUrl(mixed $data) static 验证是否为有效的URL地址 |
|
85
|
|
|
* @method bool isMobile(mixed $data) static 验证是否为有效的手机 |
|
86
|
|
|
* @method bool isIp(mixed $data) static 验证是否为有效的IP |
|
87
|
|
|
* @method bool isIdCard(mixed $data) static 验证是否为有效的身份证号码 |
|
88
|
|
|
* @method bool isMacAddr(mixed $data) static 验证是否为有效的MAC地址 |
|
89
|
|
|
* @method bool isZip(mixed $data) static 验证是否为有效的邮编 |
|
90
|
|
|
* @method mixed getError() static 获取错误信息 |
|
91
|
|
|
*/ |
|
|
|
|
|
|
92
|
|
|
class Validate extends Facade |
|
93
|
|
|
{ |
|
94
|
|
|
/** |
|
95
|
|
|
* 始终创建新的对象实例 |
|
96
|
|
|
* @var bool |
|
97
|
|
|
*/ |
|
98
|
|
|
protected static $alwaysNewInstance = true; |
|
99
|
|
|
|
|
100
|
|
|
/** |
|
101
|
|
|
* 获取当前Facade对应类名(或者已经绑定的容器对象标识) |
|
102
|
|
|
* @access protected |
|
103
|
|
|
* @return string |
|
104
|
|
|
*/ |
|
105
|
|
|
protected static function getFacadeClass() |
|
106
|
|
|
{ |
|
107
|
|
|
return 'validate'; |
|
108
|
|
|
} |
|
109
|
|
|
} |
|
110
|
|
|
|