国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

tp6 rules內(nèi)置驗(yàn)證規(guī)則thinkphp

這篇具有很好參考價(jià)值的文章主要介紹了tp6 rules內(nèi)置驗(yàn)證規(guī)則thinkphp。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、格式驗(yàn)證類

1、驗(yàn)證某個(gè)字段必須:‘name’=>‘require’

2、驗(yàn)證某個(gè)字段的值是否為純數(shù)字:‘num’=>‘number’

3、驗(yàn)證某個(gè)字段的值是否為整數(shù):‘num’=>‘integer’

4、驗(yàn)證某個(gè)字段的值是否為浮點(diǎn)數(shù)字:‘num’=>‘float’

5、驗(yàn)證某個(gè)字段的值是否為布爾值:‘num’=>‘boolean’

6、驗(yàn)證某個(gè)字段的值是否為email地址:‘email’=>‘email’

7、驗(yàn)證某個(gè)字段的值是否為數(shù)組:‘info’=>‘a(chǎn)rray’

8、驗(yàn)證某個(gè)字段是否為為 yes, on, 或是 1:‘a(chǎn)ccept’=>‘a(chǎn)ccepted’

9、驗(yàn)證值是否為有效的日期:‘date’=>‘date’

10、驗(yàn)證某個(gè)字段的值是否為純字母:‘name’=>‘a(chǎn)lpha’

11、驗(yàn)證某個(gè)字段的值是否為字母和數(shù)字:‘name’=>‘a(chǎn)lphaNum’

12、驗(yàn)證某個(gè)字段的值是否為字母和數(shù)字:‘name’=>‘a(chǎn)lphaDash’

13、驗(yàn)證某個(gè)字段的值只能是漢字:‘name’=>‘chs’

14、驗(yàn)證某個(gè)字段的值只能是漢字、字母:‘name’=>‘chsAlpha’

15、驗(yàn)證某個(gè)字段的值只能是漢字、字母和數(shù)字:‘name’=>‘chsAlphaNum’

16、驗(yàn)證某個(gè)字段的值只能是漢字、字母、數(shù)字和下劃線_及破折號(hào)-:‘name’=>‘chsDash’

17、驗(yàn)證某個(gè)字段的值只能是控制字符(換行、縮進(jìn)、空格):‘name’=>‘cntrl’

18、驗(yàn)證某個(gè)字段的值只能是可打印字符(空格除外):‘name’=>‘graph’

19、驗(yàn)證某個(gè)字段的值只能是可打印字符(包括空格):‘name’=>‘print’

20、驗(yàn)證某個(gè)字段的值只能是小寫字符:‘name’=>‘lower’

21、驗(yàn)證某個(gè)字段的值只能是大寫字符:‘name’=>‘upper’

22、驗(yàn)證某個(gè)字段的值只能是空白字符(包括縮進(jìn),垂直制表符,換行符,回車和換頁(yè)字符):‘name’=>‘space’

23、驗(yàn)證某個(gè)字段的值只能是十六進(jìn)制字符串:‘name’=>‘xdigit’

24、驗(yàn)證某個(gè)字段的值是否為有效的域名或者IP:‘host’=>‘a(chǎn)ctiveUrl’

25、驗(yàn)證某個(gè)字段的值是否為有效的URL地址:‘url’=>‘url’

26、驗(yàn)證某個(gè)字段的值是否為有效的IP地址:‘ip’=>‘ip’

27、驗(yàn)證某個(gè)字段的值是否為指定格式的日期:‘create_time’=>‘dateFormat:y-m-d’

28、驗(yàn)證某個(gè)字段的值是否為有效的手機(jī):‘mobile’=>‘mobile’

29、驗(yàn)證某個(gè)字段的值是否為有效的身份證格式:‘id_card’=>‘idCard’

30、驗(yàn)證某個(gè)字段的值是否為有效的MAC地址:‘mac’=>‘macAddr’

31、驗(yàn)證某個(gè)字段的值是否為有效的郵政編碼:‘zip’=>‘zip’

二、長(zhǎng)度和區(qū)間驗(yàn)證類

1、驗(yàn)證某個(gè)字段的值是否在某個(gè)范圍:‘num’=>‘in:1,2,3’

2、驗(yàn)證某個(gè)字段的值不在某個(gè)范圍:‘num’=>‘notIn:1,2,3’

3、驗(yàn)證某個(gè)字段的值是否在某個(gè)區(qū)間:‘num’=>‘between:1,10’

4、驗(yàn)證某個(gè)字段的值不在某個(gè)范圍:‘num’=>‘notBetween:1,10’

5、驗(yàn)證某個(gè)字段的值的長(zhǎng)度是否在某個(gè)范圍:‘name’=>‘length:4,25’

6、指定長(zhǎng)度:‘name’=>‘length:4’

7、驗(yàn)證某個(gè)字段的值的最大長(zhǎng)度(數(shù)據(jù)是數(shù)組,判斷數(shù)組的長(zhǎng)度;數(shù)據(jù)是File對(duì)象,判斷文件的大?。骸畁ame’=>‘max:25’

8、驗(yàn)證某個(gè)字段的值的最小長(zhǎng)度(數(shù)據(jù)是數(shù)組,判斷數(shù)組的長(zhǎng)度;數(shù)據(jù)是File對(duì)象,判斷文件的大?。骸畁ame’=>‘min:5’

9、驗(yàn)證某個(gè)字段的值是否在某個(gè)日期之后:‘begin_time’ => ‘a(chǎn)fter:2016-3-18’

10、驗(yàn)證某個(gè)字段的值是否在某個(gè)日期之前:‘end_time’ => ‘before:2016-10-01’

11、驗(yàn)證當(dāng)前操作(注意不是某個(gè)值)是否在某個(gè)有效日期之內(nèi):‘expire_time’ => ‘expire:2016-2-1,2016-10-01’

12、驗(yàn)證當(dāng)前請(qǐng)求的IP是否在某個(gè)范圍:‘name’ => ‘a(chǎn)llowIp:114.45.4.55’

13、驗(yàn)證當(dāng)前請(qǐng)求的IP是否禁止訪問(多個(gè)IP用逗號(hào)分隔):‘name’ => ‘denyIp:114.45.4.55’

三、字段比較類

1、驗(yàn)證某個(gè)字段是否和另外一個(gè)字段的值一致:‘repassword’=>‘require|confirm:password’,支持字段自動(dòng)匹配驗(yàn)證規(guī)則,如password和password_confirm是自動(dòng)相互驗(yàn)證的,只需要使用:‘password’=>‘require|confirm’

2、驗(yàn)證某個(gè)字段是否和另外一個(gè)字段的值不一致:‘name’=>‘require|different:account’

3、驗(yàn)證是否等于某個(gè)值:‘score’=>‘eq:100’ ‘num’=>‘=:100’ ‘num’=>‘same:100’

4、驗(yàn)證是否大于等于某個(gè)值:‘score’=>‘egt:60’ ‘num’=>‘>=:100’

5、驗(yàn)證是否大于某個(gè)值:‘score’=>‘gt:60’ ‘num’=>‘>:100’

6、驗(yàn)證是否小于等于某個(gè)值:‘score’=>‘elt:100’ ‘num’=>‘<=:100’

7、驗(yàn)證是否小于某個(gè)值:‘score’=>‘lt:100’ ‘num’=>‘<:100’

8、驗(yàn)證對(duì)比其他字段大?。〝?shù)值大小對(duì)比):‘price’=>‘lt:market_price’ ‘price’=>‘<:market_price’

四、filter驗(yàn)證

支持使用filter_var進(jìn)行驗(yàn)證 ‘ip’=>‘filter:validate_ip’

五、正則驗(yàn)證

支持直接使用正則驗(yàn)證

支持直接使用正則驗(yàn)證,例如:

'zip'=>'\d{6}',

// 或者

'zip'=>'regex:\d{6}',

如果你的正則表達(dá)式中包含有|符號(hào)的話,必須使用數(shù)組方式定義。

'accepted'=>['regex'=>'/^(yes|on|1)$/i'],

也可以實(shí)現(xiàn)預(yù)定義正則表達(dá)式后直接調(diào)用,例如在驗(yàn)證器類中定義regex屬性

namespace app\index\validate;

use think\Validate;

class User extends Validate
{
	protected $regex = [ 'zip' => '\d{6}'];
	protected $rule = [
	'name' => 'require|max:25',
	'email' => 'email',
	];
}

然后就可以使用

'zip' => 'regex:zip',

六、上傳驗(yàn)證

file:驗(yàn)證是否是一個(gè)上傳文件

image:width,height,type:驗(yàn)證是否是一個(gè)圖像文件,width height和type都是可選,width和height必須同時(shí)定義

fileExt:允許的文件后綴

fileMime:允許的文件類型

fileSize:驗(yàn)證上傳文件大小

七、其它驗(yàn)證

token:表單令牌名稱

驗(yàn)證當(dāng)前請(qǐng)求的字段值是否為唯一的,例如:

// 表示驗(yàn)證name字段的值是否在user表(不包含前綴)中唯一

‘name’ => ‘unique:user’,

// 驗(yàn)證其他字段

‘name’ => ‘unique:user,account’,

// 排除某個(gè)主鍵值

‘name’ => ‘unique:user,account,10’,

// 指定某個(gè)主鍵值排除

‘name’ => ‘unique:user,account,10,user_id’,

如果需要對(duì)復(fù)雜的條件驗(yàn)證唯一,可以使用下面的方式:

// 多個(gè)字段驗(yàn)證唯一驗(yàn)證條件

‘name’ => ‘unique:user,status^account’,

// 復(fù)雜驗(yàn)證條件

‘name’ => ‘unique:user,status=1&account=’.$data[‘a(chǎn)ccount’],

requireIf:field,value:驗(yàn)證某個(gè)字段的值等于某個(gè)值的時(shí)候必須

// 當(dāng)account的值等于1的時(shí)候 password必須

‘password’=>‘requireIf:account,1’

requireWith:field:驗(yàn)證某個(gè)字段有值的時(shí)候必須,例如:

// 當(dāng)account有值的時(shí)候password字段必須

‘password’=>‘requireWith:account’

requireWithout:field:驗(yàn)證某個(gè)字段沒有值的時(shí)候必須,例如:

// mobile和phone必須輸入一個(gè)

‘mobile’ => ‘requireWithout:phone’,

‘phone’ => ‘requireWithout:mobile’

requireCallback:callable:驗(yàn)證當(dāng)某個(gè)callable為真的時(shí)候字段必須,例如:

// 使用check_require方法檢查是否需要驗(yàn)證age字段必須

‘a(chǎn)ge’=>‘requireCallback:check_require|number’

用于檢查是否需要驗(yàn)證的方法支持兩個(gè)參數(shù),第一個(gè)參數(shù)是當(dāng)前字段的值,第二個(gè)參數(shù)則是所有的數(shù)據(jù)。

function check_require($value, $data){
	if(empty($data['birthday'])){
		return true;
	}
}

只有check_require函數(shù)返回true的時(shí)候age字段是必須的,并且會(huì)進(jìn)行后續(xù)的其它驗(yàn)證文章來源地址http://www.zghlxwxcb.cn/news/detail-861103.html

到了這里,關(guān)于tp6 rules內(nèi)置驗(yàn)證規(guī)則thinkphp的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • tp6 RabbitMQ

    1、composer 安裝 AMQP 擴(kuò)展 2、RabbitMQ 配置 ?在 config 目錄下創(chuàng)建 rabbitmq.php 文件 3、生產(chǎn)者代碼 app目錄下創(chuàng)建Producer.php 4、消費(fèi)者代碼 app目錄下創(chuàng)建 Consumer.php 5、創(chuàng)建自定義命令 在項(xiàng)目跟目錄執(zhí)行以下命令,會(huì)自動(dòng)生成 在 command 目錄生成 Consumer 控制器? config/console.php 代碼增加

    2024年02月13日
    瀏覽(104)
  • tp6 redirect用法

    一.響應(yīng)操作 1. 響應(yīng)輸出,有好幾種:包括 return、json()和 view()等等; 2. 默認(rèn)輸出方式是以 html 格式輸出,如果你發(fā)起 json 請(qǐng)求,則輸出 json; 3. 而背后是 response 對(duì)象,可以用 response()輸出達(dá)到相同的效果; return response($data); 4. 使用 response()方法可以設(shè)置第二參數(shù),狀態(tài)碼,

    2024年02月11日
    瀏覽(99)
  • TP6 開啟關(guān)閉debug

    TP6 開啟關(guān)閉debug

    config 不起作用,還得來這里改: 或者單個(gè)方法里加:

    2024年02月10日
    瀏覽(99)
  • tp6安裝并使用rabbitMQ

    tp6安裝并使用rabbitMQ

    最近因?yàn)闃I(yè)務(wù)需要,要用到MQ就去研究了一下,說實(shí)話,安裝環(huán)境給我搞自閉了,大概是我太菜 剛開始使用yum換源,各種安裝卸載始終找不到自己要用的版本,后來全部卸載,下載安裝包 編譯安裝解百憂 我用的是erlang 25.3?的版本,MQ使用的是3.11.3的版本,符合官方要求,這里的版本是有強(qiáng)

    2024年02月08日
    瀏覽(101)
  • tp6 v3微信退款

    調(diào)用

    2024年02月13日
    瀏覽(97)
  • tp6用redis存儲(chǔ)session

    tp6用redis存儲(chǔ)session

    隨著業(yè)務(wù)量的增加,很多時(shí)候會(huì)需要共享session的情況。共享session,其實(shí)就是說多臺(tái)服務(wù)器共用一個(gè)session,或者是說一個(gè)主域跟多個(gè)子域之間共用一個(gè)session。工作中用tp也多一些,那么,我就用tp6來給大家講解一下。 在共享session,我們需要用到redis。這兒我假設(shè)大家都能讀懂

    2024年02月08日
    瀏覽(107)
  • TP6 對(duì)接阿里云短信接口2.0

    TP6 對(duì)接阿里云短信接口2.0

    首先下載 安裝阿里云短信SDK composer require alibabacloud/sdk 安裝 Alibaba Cloud SDK for PHP 作為依賴項(xiàng) composer require alibabacloud/darabonba-openapi 最后安裝對(duì)應(yīng)的包 composer require alibabacloud/dysmsapi-20170525? 上面3個(gè)都下載了,官方網(wǎng)站并沒有說明下載 sdk,這個(gè)沒有下載,查詢資料花了幾個(gè)小時(shí),

    2024年02月16日
    瀏覽(104)
  • tp6怎么做阿里云OSS存儲(chǔ)呢?

    tp6怎么做阿里云OSS存儲(chǔ)呢?

    作者:陳業(yè)貴 華為云享專家 51cto(專家博主 明日之星 TOP紅人) 阿里云專家博主 阿里云oss存儲(chǔ)是得買的。買后,還要獲取參數(shù)。填入代碼中就可以啦 獲得四個(gè)參數(shù): $accessKeyId $accessKeySecret $endpoint $bucket 不然不對(duì)了哈 告訴你怎么做阿里云OSS存儲(chǔ).

    2024年02月15日
    瀏覽(28)
  • TP6 使用閉合語(yǔ)句查詢多個(gè)or的模型語(yǔ)句

    需要傳入?yún)?shù)查詢的,可以參照下面的: ? ? ? ? 查詢出學(xué)校名稱和昵稱中有中學(xué)的所有學(xué)校

    2024年02月11日
    瀏覽(26)
  • TP6 + GatewayWorker 輕松實(shí)現(xiàn)web項(xiàng)目 websocket 功能

    TP6 + GatewayWorker 輕松實(shí)現(xiàn)web項(xiàng)目 websocket 功能

    一、在tp6項(xiàng)目下安裝? GatewayWorker? 安裝成功后在配置文件目錄下會(huì)出現(xiàn)gateway_worker.php 開始配置gateway_worker? 下邊我貼出了我的配置文件供大家參考 ? 下面對(duì)gateway 配置部分的屬性解釋 name :?可以設(shè)置Gateway進(jìn)程的名稱,方便status命令中查看統(tǒng)計(jì) count :可以設(shè)置Gateway進(jìn)程的數(shù)量

    2024年02月07日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包