搜索
首页php框架Laravel【整理分享】40 条实用的 Laravel 表单验证规则

【整理分享】40 条实用的 Laravel 表单验证规则

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 表单验证规则的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:learnku。如有侵权,请联系admin@php.cn删除
Laravel的最新版本是什么?Laravel的最新版本是什么?Apr 24, 2025 pm 05:17 PM

Laravel10,releasedonFebruary7,2023,isthelatestversion.Itfeatures:1)Improvederrorhandlingwithanewreportmethodintheexceptionhandler,2)EnhancedsupportforPHP8.1featureslikeenums,and3)AnewLaravel\Promptspackageforinteractivecommand-lineprompts.

最新的Laravel版本如何简化开发?最新的Laravel版本如何简化开发?Apr 24, 2025 pm 05:01 PM

thelatestlaravelververversionenhancesdevelopmentwith:1)简化的inimpliticmodelbinding,2)增强EnhancedeloquentcapabibilitionswithNewqueryMethods和3)改善了supportorfortormodernphpfortornphpforternphpfeatureserslikenamedargenamedArgonedArgonsemandArgoctess,makecodingMoreftermeforefterMealiteFficeAndEnjoyaigaigaigaigaigaiganigaborabilyaboipaigyAndenjoyaigobyabory。

在哪里可以找到最新的Laravel版本的发行说明?在哪里可以找到最新的Laravel版本的发行说明?Apr 24, 2025 pm 04:53 PM

你可以在laravel.com/docs找到最新Laravel版本的发布说明。1)发布说明提供了新功能、错误修复和改进的详细信息。2)它们包含示例和解释,帮助理解新功能的应用。3)注意新功能的潜在复杂性和向后兼容性问题。4)定期审查发布说明可以保持更新并激发创新。

远程工具包:在分布式团队中保持连接的基本工具远程工具包:在分布式团队中保持连接的基本工具Apr 24, 2025 pm 04:37 PM

theessentialToolSforStayingConnectedIndistributedTeamSinclude:1)CommunicationToolSlikeZoom,Microsoftteams,Slack和DiscordForeFforeffectiveCommunication; 2)ProjectManagementtoolsSuchastrello,Asana,Asana和JirafortaskManagementAngeandWorkFloworGanization jiralagementtoolssuchastrello,Asana和Jiraforterforloganization;

Laravel的影响:简化网络开发Laravel的影响:简化网络开发Apr 21, 2025 am 12:18 AM

Laravel通过简化Web开发过程和提供强大功能脱颖而出。其优势包括:1)简洁的语法和强大的ORM系统,2)高效的路由和认证系统,3)丰富的第三方库支持,使得开发者能专注于编写优雅的代码并提高开发效率。

Laravel:前端还是后端?澄清框架的角色Laravel:前端还是后端?澄清框架的角色Apr 21, 2025 am 12:17 AM

laravelispredminandermanthandermanthandermanthandermanthermanderframework,设计Forserver-SideLogic,databasemagement,andapideplupment,thryitalsosupportsfortfortsfrontenddevelopmentwithbladeTemplates。

Laravel vs. Python:探索性能和可扩展性Laravel vs. Python:探索性能和可扩展性Apr 21, 2025 am 12:16 AM

Laravel和Python在性能和可扩展性方面的表现各有优劣。Laravel通过异步处理和队列系统提升性能,但受PHP限制在高并发时可能有瓶颈;Python利用异步框架和强大的库生态系统表现出色,但在多线程环境下受GIL影响。

Laravel vs. Python(与框架):比较分析Laravel vs. Python(与框架):比较分析Apr 21, 2025 am 12:15 AM

Laravel适合团队熟悉PHP且需功能丰富的项目,Python框架则视项目需求而定。1.Laravel提供优雅语法和丰富功能,适合需要快速开发和灵活性的项目。2.Django适合复杂应用,因其“电池包含”理念。3.Flask适用于快速原型和小型项目,提供极大灵活性。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中