如果需要使用内置的规则验证单个数据,可以使用静态调用的方式。
要支持静态调用的话,必须使用
think\facade\Validate
类。
// 日期格式验证
Validate::dateFormat('2016-03-09','Y-m-d'); // true
// 验证是否有效的日期
Validate::isDate('2016-06-03'); // true
// 验证是否有效邮箱地址
Validate::isEmail('thinkphp@qq.com'); // true
// 验证是否在某个范围
Validate::in('a',['a','b','c']); // true
// 验证是否大于某个值
Validate::gt(10,8); // true
// 正则验证
Validate::regex(100,'\d+'); // true
静态验证的返回值为布尔值,错误信息需要自己判断返回值后处理。
更多验证规则可以参考前面的内置规则。
如果需要批量验证规则,可以使用
Validate::checkRule($value,'must|email');
checkRule
方法始终返回布尔值,而不支持获取错误信息。
并且支持使用规则定义(需要引入think\validate\ValidateRule
类):
Validate::checkRule($value, ValidateRule::must()->isEmail());