accepted

字段值为 yes, on, 或是 1 时,验证才会通过。这在确认"服务条款"是否同意时很有用。

active_url

字段值通过 PHP 函数 checkdnsrr 来验证是否为一个有效的网址。

after:date

验证字段是否是在指定日期之后。这个日期将会使用 PHP strtotime 函数验证。

alpha

字段仅全数为字母字串时通过验证。

alpha_dash

字段值仅允许字母、数字、破折号(-)以及底线(_)

alpha_num

字段值仅允许字母、数字

array

字段值仅允许为数组

before:date

验证字段是否是在指定日期之前。这个日期将会使用 PHP strtotime 函数验证。

between:min,max

字段值需介于指定的 min 和 max 值之间。字串、数值或是文件都是用同样的方式来进行验证。

confirmed

字段值需与对应的字段值 foo_confirmation 相同。例如,如果验证的字段是 password ,那对应的字段 password_confirmation 就必须存在且与 password 字段相符。

date

字段值通过 PHP strtotime 函数验证是否为一个合法的日期。

date_format:format

字段值通过 PHP date_parse_from_format 函数验证符合 format 制定格式的日期是否为合法日期。

different:field

字段值需与指定的字段 field 值不同。

digits:value

字段值需为数字且长度需为 value。

digits_between:min,max

字段值需为数字,且长度需介于 min 与 max 之间。

boolean

字段必须可以转换成布尔值,可接受的值为 true, false, 1, 0, "1", "0"。

email

字段值需符合 email 格式。

exists:table,column

字段值需与存在于数据库 table 中的 column 字段值其一相同。
Exists 规则的基本使用方法

'state' => 'exists:states'

指定一个自定义的字段名称

'state' => 'exists:states,abbreviation'

您可以指定更多条件且那些条件将会被新增至 "where" 查询里:

'email' => 'exists:staff,email,account_id,1'
/* 这个验证规则为 email 需存在于 staff 这个数据库表中 email 字段中且 account_id=1 */

通过NULL搭配"where"的缩写写法去检查数据库的是否为NULL

'email' => 'exists:staff,email,deleted_at,NULL'

image

文件必需为图片(jpeg, png, bmp, gif 或 svg)

in:foo,bar,...

字段值需符合事先给予的清单的其中一个值

integer

字段值需为一个整数值

ip

字段值需符合 IP 位址格式。

max:value

字段值需小于等于 value。字串、数字和文件则是判断 size 大小。

mimes:foo,bar,...

文件的 MIME 类需在给定清单中的列表中才能通过验证。
MIME规则基本用法

'photo' => 'mimes:jpeg,bmp,png'

min:value

字段值需大于等于 value。字串、数字和文件则是判断 size 大小。

not_in:foo,bar,...

字段值不得为给定清单中其一。

numeric

字段值需为数字。

regex:pattern

字段值需符合给定的正规表示式。

注意: 当使用regex模式时,您必须使用数组来取代"|"作为分隔,尤其是当正规表示式中含有"|"字串。

required

字段值为必填。

required_if:field,value

字段值在 field 字段值为 value 时为必填。

required_with:foo,bar,...

字段值 仅在 任一指定字段有值情况下为必填。

required_with_all:foo,bar,...

字段值 仅在 所有指定字段皆有值情况下为必填。

required_without:foo,bar,...

字段值 仅在 任一指定字段没有值情况下为必填。

required_without_all:foo,bar,...

字段值 仅在 所有指定字段皆没有值情况下为必填。

same:field

字段值需与指定字段 field 等值。

size:value

字段值的尺寸需符合给定 value 值。对于字串来说,value 为需符合的字串长度。对于数字来说,value 为需符合的整数值。对于文件来说,value 为需符合的文件大小(单位 kb)。

timezone

字段值通过 PHP timezone_identifiers_list 函数来验证是否为有效的时区。

unique:table,column,except,idColumn

字段值在给定的数据库中需为唯一值。如果 column(字段) 选项没有指定,将会使用字段名称。

Occasionally, you may need to set a custom connection for database queries made by the Validator. As seen above, setting unique:users as a validation rule will use the default database connection to query the database. To override this, do the following:

$verifier = App::make('validation.presence');

$verifier->setConnection('connectionName');

$validator = Validator::make($input, [
'name' => 'required',
'password' => 'required|min:8',
'email' => 'required|email|unique:users',
]); $validator->setPresenceVerifier($verifier);

唯一(Unique)规则的基本用法

'email' => 'unique:users'

指定一个自定义的字段名称

'email' => 'unique:users,email_address'

强制唯一规则忽略指定的 ID

'email' => 'unique:users,email_address,10'

增加额外的 Where 条件

您也可以指定更多的条件式到 "where" 查询语句中:

'email' => 'unique:users,email_address,NULL,id,account_id,1'

上述规则为只有 account_id 为 1 的数据列会做唯一规则的验证。

url

字段值需符合 URL 的格式。

注意: 此函数会使用 PHP filter_var 方法验证。

Laravel框架 -- Validator 可用的验证规则的更多相关文章

  1. [麦先生]在Laravel框架里实现邮箱验证---发送邮件

    在经过一段时间的使用后,发现在项目中很多地方需要用到用户验证,以短信验证和邮箱验证为主流趋势,小麦总结了如果在Laravel框架中实现发送邮件功能,以后会陆续更上如何实现短信验证..... 在.env ...

  2. Laravel的unique和exists验证规则的优化

    本文是Laravel实战:任务管理系统(一)的扩展阅读 原文链接:http://pilishen.com/posts/Improvements-to-the-Laravel-unique-and-ex ...

  3. 关于脱离laravel框架使用Illuminate/Validation验证器

    1.关于Illuminate/Validation验证器 Validation 类用于验证数据以及获取错误消息. github地址:github.com/illuminate/validation 文 ...

  4. laravel框架中注册信息验证

    .路由配置 <?php Route::. 控制器分配页面及验证表单提交内容 <?php .form 表单验证 {{ Form::open(array().slideUp();   < ...

  5. 关于laravel框架的Auth::attempt验证失败

    按照官方文档进行认证 发现不管怎么样都是失败 if (Auth::attempt(array('email' => $email, 'password' => $password), tr ...

  6. [麦先生]Laravel框架实现发送短信验证

    今天在做到用户注册和个人中心的安全管理时,我借助实现第三方短信平台在Laravel框架中进行手机验证的设置;  由于我们做的是一个为客户提供医疗咨询和保健品网站,所以对客户个人隐私的保护显得尤为重要, ...

  7. Laravel框架一:原理机制篇

    Laravel作为在国内国外都颇为流行的PHP框架,风格优雅,其拥有自己的一些特点.以下是本人一点粗浅的认识,不敢奢求他人同意,更不能一一而足,仅为自己做一点总结而已. 一. 请求周期 Laravel ...

  8. laravel 框架登录 实际操作

    //登录中间件 Route::group(['middleware'=>'checkage'],function (){ Route::get('/mou/list','MouControlle ...

  9. laravel 可用验证规则

    accepted 验证的字段必须为 yes. on. 1.或 true.这在确认服务条款是否同意时相当有用. active_url 相当于使用了 PHP 函数 dns_get_record,验证的字段 ...

随机推荐

  1. 双态运维分享之:业务场景驱动的服务型CMDB

    最近这几年,国内外CMDB失败的案例比比皆是,成功的寥寥可数,有人质疑CMDB is dead?但各种业务场景表明,当下数据中心运维,CMDB依然是不可或缺的一部分,它承载着运维的基础,掌握运维的命脉 ...

  2. 理解Java异常处理机制的机理

    重看异常机制的时候觉得抓到了点机理上的精髓,所以来说一下,对初学者应该会有些帮助   JAVA中的异常机制 从机制上由[产生异常][抛出异常][捕捉异常][异常处理]组成 从形式上又分为四种: 运行时 ...

  3. RedHat 6.6下安装nginx,配置HTTPS

    1.安装依赖包 yum -y install pcre-devel openssl-devel zlib-devel 2.下载nginx安装包到服务器上,当前使用版本nginx-1.15.5.tar. ...

  4. centos7 安装Mariadb

    MariaDB 数据库管理系统是 MySQL 的一个分支,主要由开源社区在维护,采用 GPL 授权许可.开发这个分支的原因之一是:甲骨文公司收购了 MySQL 后,有将 MySQL 闭源的潜在风险,因 ...

  5. Incorrect datetime value

    今天在开发库上给一个表添加字段时候,发现居然报错: root@DB 06:14:42>ALTER TABLE `DB`.` user` ADD COLUMN `status_mode` TINY ...

  6. 特定于类的内存管理---《C++必知必会》 条款36

    我们可以量身定制 operator new 和 operator delete 用于某个类类型,而不是必须使用标准版的 operator new 和 operator delete. 注意:我们不可以 ...

  7. java线程初写,陆续更新中。。

    (1)什么是线程?线程,是程序执行流的最小单元.线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其它线程共享 ...

  8. 团队作业5-测试与发布(alpha阶段)

    团队作业5-测试与发布(alpha阶段) 一.测试 请根据团队项目中软件的需求文档.功能说明.系统设计和测试计划,写出软件的测试过程和测试结果,并回答下述问题. 1. 在测试过程中总共发现了多少Bug ...

  9. Sublime Text3编辑器简介

    Sublime Text3编辑器简介 下载地址 绿色中文版v3.3038下载地址:http://www.cncrk.com/downinfo/60832.html 官方网址(英文安装版)下载地址:ht ...

  10. sed删除包含指定字符串的所有行

    1.以删除文件example.txt中包含字符串"=yes"的行为例,example.txt文件有以下内容: dadasdfsadf=yes=sds dsdadasdkfk dsd ...