chaihongjun.me

thinkphp5.0 数据验证方式汇总

  1. 直接使用独立的Validate类,独立验证

use think\Validate;
// 验证规则
$rules = [
'name'  => 'require|max:25',
'email' => 'email'  
]
// 实例化验证对象 并导入规则    
$validate = new Validate($rules);
//  待验证的数据
$data = [
       'name'  => 'thinkphp',
       'email' => 'thinkphp@qq.com'    
]
//  验证
if($validate->check($data)){
    //    
}
  1. 针对模型创建验证器,推荐模式

主要是创建对应模型的验证器类,并且创建验证的规则

// 创建模型 user 的验证器
namespace app\index\validate;
use think\Validate;
class User extends Validate
{
  //  验证规则  
   protected $rule = [
       'name'  =>  'require|max:25',
       'email' =>  'email',
   ];
}
//  待验证的数据
$data = [
       'name'  => 'thinkphp',
       'email' => 'thinkphp@qq.com'    
]
// 实例化模型的验证器
$validate =Loader::validate('User');   //这里的 User 是 app\index\validate\User
// 或者 助手函数实例化
$validate = validate('User');
// 验证数据
if(!$validate->check($data)){
   dump($validate->getError());
}



知识共享许可协议本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。作者:柴宏俊»