Home或Home2\Controller 编辑下的
/* //静态验证
		//自动验证
		$user=D(‘Sks‘);
		$data[‘name‘]=‘1234‘;
		$data[‘pass‘]=‘xxx‘;
		//$data[‘name2‘]=‘xxx‘;
		if($user->create($data)){
			
			echo ‘<br>‘;
			echo ‘所有数据成功‘;
		}
		else{
			//输出错误信息
			
			echo ‘<br>‘;
			echo ‘<pre>‘;
			var_dump($user->getError());
			echo ‘</pre>‘;
		}
		*/
		
		
		/*	//动态验证
		$rules=array(
			array(‘name‘,‘require‘,‘用户名不得为空‘),
		);
		$user=M(‘Sks‘);
		$data[‘name‘]=‘1234‘;
		if($user->validate($rules)->create($data)){
			
			echo ‘<br>‘;
			echo ‘所有数据成功‘;
		}
		else{
			//输出错误信息
			
			echo ‘<br>‘;
			echo ‘<pre>‘;
			var_dump($user->getError());
			echo ‘</pre>‘;
		}
		*/
Home或Home2\Model 下的
protected $patchValidate=true;
	//原本如果有多个错误,只显示一个,但这个会令其都显示
	protected $_validate=array(
			  //字段名,验证规则,错误提示,验证条件,附加规则,验证时间
			  
		//array(‘name‘,‘require‘,‘用户不得为空‘,‘0‘,‘regex‘,‘3‘),
		
			//name字段,不得空,错误提示:上,(存在字段就验证,附加规则,添加或修改时验证)默认项
			
		//array(‘name‘,‘email‘,‘邮箱‘),
		
		//array(‘name‘,‘url‘,‘url‘),
		
		//array(‘name‘,‘currency‘,‘货币‘),
		
		//array(‘name‘,‘zip‘,‘邮政编码‘),
		
		//array(‘name‘,‘number‘,‘正整数‘),
				
		//array(‘name‘,‘integer‘,‘整数‘),
		
		//array(‘name‘,‘double‘,‘浮点数‘),
		
		//array(‘name‘,‘english‘,‘纯英语‘),
		
		
				//附加规则-不用内置规则,自己定的规则
		
		//array(‘name‘,‘/^\d{3,6}$/‘,‘3-6位数字‘,0,‘regex‘),
					//验证3-6位数
					
		//array(‘name‘,‘xxx‘,‘值不相等‘,0,‘equal‘),
					//验证是否与指定值相等
					
		//array(‘pass‘,‘xxx‘,‘值不能相等‘,0,‘notequal‘),
					//验证是否与指定值不相等
					
		//array(‘name‘,‘name2‘,‘两个用户名不同‘,0,‘confirm‘),
					//验证两个字段是否相等
					
		//array(‘name‘,array(1,2,3),‘不是指定值‘,0,‘in‘),
		//array(‘name‘,‘张三,李四,王五‘,‘不是指定值‘,0,‘in‘),
					//验证数值是否是指定值
					
		//array(‘name‘,array(1,3),‘不得是指定值‘,0,‘notin‘),
		//array(‘name‘,‘张三,李四,王五‘,‘不得是指定值‘,0,‘notin‘),
					//验证数值是否不是指定值
					
		//array(‘name‘,‘3‘,‘请输入三位数‘,0,‘length‘),
		//array(‘name‘,‘3,5‘,‘不得小于三位,不得大于五位‘,0,‘length‘),
					//验证数值的位数
		
		//array(‘name‘,array(3,5),‘不在指定范围内‘,0,‘between‘),
		//array(‘name‘,‘3,5‘,‘不在指定范围内‘,0,‘between‘),
					//验证数值的位数
		
		//array(‘name‘,array(3,5),‘不得在指定范围内‘,0,‘notbetween‘),
		//array(‘name‘,‘3,5‘,‘不得在指定范围内‘,0,‘notbetween‘),
					//验证数值的位数
					
		//array(‘name‘,‘2017-4-10,2017-4-13‘,‘已过期‘,0,‘expire‘),
					//设置有效期范围,必须是表单提交有效,可以是时间戳
					
		//array(‘name‘,‘192.168.0.10‘,‘当前ip被禁止‘,0,‘ip_deny‘),		
					//禁止ip访问
		
		//array(‘name‘,‘127.0.0.1‘,‘当前ip没有被允许‘,0,‘ip_allow‘),			
					//只允许此ip访问
					
		 //array(‘name‘,‘checkLength‘,‘用户名必须为3-5位‘,0,‘callback‘,3,array(3,5)),	
					//使用回调形式
		 
		 //array(‘name‘,‘checkLength‘,‘用户名必须为3-5位‘,0,‘callback‘,3,array(3,5)),			
					//使用函数形式
		
	);
	/*	//checkLength回调形式
	protected function checkLength($str,$min,$max){
		preg_match_all("/./u",$str,$matches);
		$len=count($matches[0]);
		if($len<$min || $len>$max){
			return false;
		}
		else{
			return true;
		}
	}
	*/
原文:http://www.cnblogs.com/yjh1604600160/p/think6.html