laravel 的验证系统有 60多个验证规则可用,但是如果你需要其他的功能怎么办?你可以 轻松创建自己的验证规则, 也可以使用互联网上已有的验证规则。让我们来看看。
来自 alphametric 的22条规则首先,我们从 alphametric 的高级开发人员 matt kingshott 的一系列文章开始,他在 medium 写了许多的帖子,并将所有规则添加到 github存储库 中。以下是可用的规则列表:
strongpassword: 检查是否是 “强” 类型的密码
telephonenumber: 检查是否是有效的电话号码
recordowner: 要求经过身份验证的用户 id 与给定数据库记录中的user_id 列匹配,例如: 所有者:帖子,id
monetaryfigure: 检查货币数字,例如: $ 72.33
disposableemail: 检查邮件地址是不是一次性的邮件地址
doesnotexist: 检查给定的值是否存在数据库 表/列 中
decimal: 检查是否具是有正确格式的十进制
encodedimage: 检查值是否是给定 mime 类型的 base64 编码图像
locationcoordinates: 检查是不是以逗号分隔开的一组经纬度坐标
fileexists: 检查值是不是一个已有的文件路径
equals: 检查值是否等于另外一个值
macaddress: 检查值是不是一个有效的 mac 地址
isbn: 检查值是不是有效的isbn-10或isbn-13数字
endswith: 检查值是不是以给定的字符串结尾
evennumber: 检查值是不是偶数(小数先使用 intval 进行类型强制转换)
oddnumber: 检查值是不是奇数(小数先使用 intval 进行类型强制转换)
lowercase: 检查值是不是小写的字符串
uppercase: 检查值是不是大写的字符串
titlecase: 检查值是不是标题字符串
domain: 检查值是不是一个合法域名 google.com, www.google.com
citizenidentification:检查值是不是合法的 美/法/英 国公民的身份证号
withoutwhitespace: 检查值是否包含空格字符
来自 scott robinson 的 8 条规则scott robinson 制定了另一套好的规则,他还为此创建了一个专门的网站 laravel-validation-rules.github.io。它有以下规则:
colour: 值是不是颜色,目前仅支持十六进制代码。
country codes: 验证 2&3 个字符的 国家/地区 代码。
credit card: 验证值是不是合法的信用卡号及有效期和是否有效。
ip: 验证值 ip 地址是公共的还是私有的。支持 ipv4 和 ipv6。
phone: 验证值是否满足电话号码格式。
subdomain: 验证用户提交的自域名值是否已经存在与当前程序中。
timezone: 验证时区值在系统时间日期数据库中是否有效。
us state: 验证值是不是美国的州/加拿大的省份。
spatie 的 5 条规则spatie 在自己的 存储库 中提供了一些验证规则:
authorized: 验证用户是否有权对某一个模型的实例执行功能。
countrycode: 验证字段是不是一个有效的 iso3166 国家/地区代码。
enum: 验证值是不是属于给定枚举类的一部分, 例如 myclabs/php-enum.
modelsexist: 验证输入数组中的所有值都作为给定模型类的属性存在。
delimited: 验证字符串中是否有定界值, 例如 ‘sebastian@example.com, alex@example.com’中的@符
pineco.de 的 5 条规则最后是来自gergő d. nagy 在 2017 年 年末发表在 pineco 的一篇文章。 相关验证规则存储在 github存储库。但是自那时起就没有再更新过,谨慎使用! 规则如下:
password:检查用户的密码。odd:检查值是不是奇数。even: 检查值是不是偶数。incremented:检查值是不是一个自增字段。specific words:检查值是否包含特定单词。 weekday:检查日期是不是一个合法的工作日。
原文地址:https://laraveldaily.com/40-additional-laravel-validation-rules/
译文地址:https://learnku.com/laravel/t/39365
【相关推荐:laravel视频教程】
以上就是【整理分享】40 条实用的 laravel 表单验证规则的详细内容。