亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

驗(yàn)證器的使用

Original 2019-05-21 18:09:27 303
abstract:<?php namespace app\Validate; use think\Validate; //繼承框架的驗(yàn)證叫驗(yàn)證器模式; class Admin extends Validate { //驗(yàn)證規(guī)則; protected $rule = [ 'qq' =>&n
<?php
namespace app\Validate;

use think\Validate;

//繼承框架的驗(yàn)證叫驗(yàn)證器模式;
class Admin extends Validate
{
	//驗(yàn)證規(guī)則;
	protected $rule = [
		'qq' => 'require|length:4,10', 	//長(zhǎng)度要求4-10;
		'password' => 'require|length:4,8',
		//'sex' => 'in:0,1';	//范圍0-1之間;
		//'money' => 'require|gt:2000';	//大于2000;
	];

	protected $message = [
		'qq.require' => 'qq長(zhǎng)度必須在4到10之間',
		'password' =>  '密碼長(zhǎng)度必須在4到8之間',

	];
}
<?php
namespace app\index\controller;

use think\Controller;
use app\validate\Admin;	//導(dǎo)入驗(yàn)證器;	


// 數(shù)據(jù)驗(yàn)證;
class Verify extends Controller   	//無(wú)法繼承兩個(gè)類,所以另一個(gè)就用依賴注入;
{
	public function demo(Admin $validate ){
		$data = [
			'qq' => 'longzhu',
			'password' => 12345678,
		];

		// $validate = new Admin();		//->可以用依賴注入;
		if($validate->check($data)){
			return '驗(yàn)證通過(guò)';
		}else{
			dump($validate->getError());
		}

	}


	//驗(yàn)證器模式	,推薦使用;
	public function demo2(){
		$data = [
			'qq' => 'longzhu',
			'password' => 123245678,
		];

		$rule = 'app\validate\Admin';
		$res = $this->validate($data,$rule);
		//如果數(shù)據(jù)符合驗(yàn)證規(guī)則;返回的是true;
		if($res){
			return $res;
		}

		return '驗(yàn)證成功'; 
	}


	//獨(dú)立驗(yàn)證;
	public function demo3(){
		//think\Validate.php
		//validate::make()	創(chuàng)建驗(yàn)證規(guī)則并返回對(duì)象;
		//Validate->check($data)	驗(yàn)證;

		// 1.創(chuàng)建驗(yàn)證規(guī)則;
		$rule = [
			'qq' => 'require|length:4,10', 	//長(zhǎng)度要求4-10;
			'password' => 'require|length:4,8',
		];

		//2.錯(cuò)誤信息
		$message = [
			'qq.require' => 'qq長(zhǎng)度必須在4到10之間',
			'password' =>  '密碼長(zhǎng)度必須在4到8之間',
		];

		//3.創(chuàng)建數(shù)據(jù);
		$data = [
			'qq' => 'longzhu',
			'password' => 1232245678,
		];

		// 重要的;驗(yàn)證類沒找到,可以直接在原地路徑;
		$validate = \think\Validate::make($rule,$message);
		$res = $validate->check($data);
		return $res? '驗(yàn)證通過(guò)':$validate->getError();

	}
}

在任意文件下創(chuàng)建一個(gè)驗(yàn)證器類,創(chuàng)建的類繼承框架的類;

驗(yàn)證器類里有兩個(gè)受保護(hù)的屬性,驗(yàn)證規(guī)則和驗(yàn)證信息;    

在控制器方法中調(diào)用驗(yàn)證器類,(用依賴注入調(diào)用此類);

將數(shù)據(jù)和規(guī)則一起驗(yàn)證,并返回信息;

有信息驗(yàn)證失敗,沒信息,驗(yàn)證成功;

Correcting teacher:查無(wú)此人Correction time:2019-05-22 09:28:36
Teacher's summary:完成的不錯(cuò)。多看thinkphp的文檔,多練習(xí)功能,很快就能上手。繼續(xù)加油。

Release Notes

Popular Entries