【整理分享】40 條實(shí)用的 Laravel 表單驗(yàn)證規(guī)則

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

【整理分享】40 條實(shí)用的 Laravel 表單驗(yàn)證規(guī)則

laravel 的驗(yàn)證系統(tǒng)有?60多個驗(yàn)證規(guī)則可用,但是如果你需要其他的功能怎么辦?你可以?60多個驗(yàn)證規(guī)則, 也可以使用互聯(lián)網(wǎng)上已有的驗(yàn)證規(guī)則。讓我們來看看。

來自 Alphametric 的22條規(guī)則

首先,我們從 Alphametric 的高級開發(fā)人員 Matt Kingshott 的一系列文章開始,他在 Medium ?寫了許多的帖子,并將所有規(guī)則添加到 60多個驗(yàn)證規(guī)則 中。以下是可用的規(guī)則列表:

  • StrongPassword: 檢查是否是 “強(qiáng)” 類型的密碼

  • Telephonenumber: 檢查是否是有效的電話號碼

  • RecordOwner: 要求經(jīng)過身份驗(yàn)證的用戶 ID 與給定數(shù)據(jù)庫記錄中的user_id 列匹配,例如: 所有者:帖子,id

  • MonetaryFigure: 檢查貨幣數(shù)字,例如: $ 72.33

  • DisposableEmail: 檢查郵件地址是不是一次性的郵件地址

  • DoesNotExist: 檢查給定的值是否存在數(shù)據(jù)庫 表/列 中

  • Decimal: 檢查是否具是有正確格式的十進(jìn)制

  • EncodedImage: 檢查值是否是給定 mime 類型的 base64 編碼圖像

  • LocationCoordinates: 檢查是不是以逗號分隔開的一組經(jīng)緯度坐標(biāo)

  • FileExists: 檢查值是不是一個已有的文件路徑

  • Equals: 檢查值是否等于另外一個值

  • MacAddress: 檢查值是不是一個有效的 MAC 地址

  • ISBN: 檢查值是不是有效的ISBN-10或ISBN-13數(shù)字

  • EndsWith: 檢查值是不是以給定的字符串結(jié)尾

  • EvenNumber: 檢查值是不是偶數(shù)(小數(shù)先使用 intval 進(jìn)行類型強(qiáng)制轉(zhuǎn)換)

  • OddNumber: 檢查值是不是奇數(shù)(小數(shù)先使用 intval 進(jìn)行類型強(qiáng)制轉(zhuǎn)換)

  • Lowercase: 檢查值是不是小寫的字符串

  • Uppercase: 檢查值是不是大寫的字符串

  • Titlecase: 檢查值是不是標(biāo)題字符串

  • Domain: 檢查值是不是一個合法域名 google.com, www.google.com

  • CitizenIdentification:檢查值是不是合法的 美/法/英 國公民的身份證號

  • WithoutWhitespace: 檢查值是否包含空格字符


來自 Scott Robinson 的 8 條規(guī)則

60多個驗(yàn)證規(guī)則 制定了另一套好的規(guī)則,他還為此創(chuàng)建了一個專門的網(wǎng)站 60多個驗(yàn)證規(guī)則。它有以下規(guī)則:

  • Colour: 值是不是顏色,目前僅支持十六進(jìn)制代碼。

  • Country Codes: 驗(yàn)證 2&3 個字符的 國家/地區(qū) 代碼。

  • Credit Card: 驗(yàn)證值是不是合法的信用卡號及有效期和是否有效。

  • IP: 驗(yàn)證值 IP 地址是公共的還是私有的。支持 IPV4 和 IPV6。

  • Phone: 驗(yàn)證值是否滿足電話號碼格式。

  • Subdomain: 驗(yàn)證用戶提交的自域名值是否已經(jīng)存在與當(dāng)前程序中。

  • Timezone: 驗(yàn)證時區(qū)值在系統(tǒng)時間日期數(shù)據(jù)庫中是否有效。

  • US State: 驗(yàn)證值是不是美國的州/加拿大的省份。


Spatie 的 5 條規(guī)則

60多個驗(yàn)證規(guī)則?在自己的?60多個驗(yàn)證規(guī)則?中提供了一些驗(yàn)證規(guī)則:

  • Authorized: 驗(yàn)證用戶是否有權(quán)對某一個模型的實(shí)例執(zhí)行功能。

  • CountryCode: 驗(yàn)證字段是不是一個有效的 ISO3166 國家/地區(qū)代碼。

  • Enum: 驗(yàn)證值是不是屬于給定枚舉類的一部分, 例如 ?60多個驗(yàn)證規(guī)則.

  • ModelsExist: 驗(yàn)證輸入數(shù)組中的所有值都作為給定模型類的屬性存在。

  • Delimited: 驗(yàn)證字符串中是否有定界值, 例如?‘sebastian@example.com, alex@example.com’中的@符


Pineco.de 的 5 條規(guī)則

最后是來自60多個驗(yàn)證規(guī)則?在 2017 年 年末發(fā)表在?60多個驗(yàn)證規(guī)則?的一篇文章。 相關(guān)驗(yàn)證規(guī)則存儲在?60多個驗(yàn)證規(guī)則。但是自那時起就沒有再更新過,謹(jǐn)慎使用! 規(guī)則如下:

  • password:檢查用戶的密碼。
  • Odd:檢查值是不是奇數(shù)。
  • even:?檢查值是不是偶數(shù)。
  • incremented:檢查值是不是一個自增字段。
  • specific?words:檢查值是否包含特定單詞。
  • ?weekday:檢查日期是不是一個合法的工作日。

原文地址:https://laraveldaily.com/40-additional-laravel-validation-rules/譯文地址:https://learnku.com/laravel/t/39365

【相關(guān)推薦:60多個驗(yàn)證規(guī)則

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊15 分享