首页 后端开发 php教程 Yii2验证器(Validator)用法分析_php实例

Yii2验证器(Validator)用法分析_php实例

Aug 04, 2016 am 08:56 AM
validator yii2 验证器

本文实例讲述了Yii2验证器(Validator)用法。分享给大家供大家参考,具体如下:

先看一下验证器的使用。

public function rules()
{
  return [
    [['email', 'password'], 'required'],
    ['password', 'string', 'min'=>6],
  ];
}

登录后复制

如上所示,验证器主要使用在rules里面,对当前model里面的属性值进行验证以检查是否满足某种要求。

验证器使用格式:

书写格式为:[需要验证的属性,验证器名称,验证器参数]。

如果需要验证的属性为多个可用数组,如果为一个属性可用字符串也可用数组来表示。

每个属性都可以有多个验证器,如上面的password使用了 required和string两个验证器。

常用验证器:

Yii2已经内置了一些常用的验证器。所有的验证器都从基类yii\validators\Validator继承实现。我大概总结下有这么几类。

数字相关:

integer——整数
用来检测属性值是否为整数,以及最大、最小值检测等。(yii\validators\NumberValidator)

double——浮点
用来检测属性值是否为浮点数,即小数。(yii\validators\NumberValidator)

number——数字
这个和上面的double完全相同,只是用了2个名称。(yii\validators\NumberValidator)

格式相关:

date——日期
检验属性值是否为正确的日期格式。(yii\validators\DateValidator)

email——邮件
检测属性值是否是正确的电子邮件格式。(yii\validators\EmailValidator)

url——URL
用来判断属性值是否是正确的url地址。(yii\validators\UrlValidator)

对值进行函数处理:

filter——过滤器
这个是对属性值进行加工处理的。如对属性值加前缀、替换特定的字符串等等。(yii\validators\FilterValidator)

trim——裁边
这个是对属性值进行加工处理的。只是去掉字符串两侧的空格、或指定的字符串。(yii\validators\FilterValidator)

上传文件验证:

file——文件
这个主要是对上传的文件进行验证,如格式、大小等。(yii\validators\FileValidator)

image——图片
这个和上面的file验证器差不多,不过是专门用来验证图片的。(yii\validators\ImageValidator)

判断比较:

compare——比较
用来对两个属性值进行比较,如相等、大于、小于比较等。(yii\validators\CompareValidator)

in——包含(范围)
用来检测属性值是否包含在指定的数组中。(yii\validators\RangeValidator)

exist——存在
用来检测在数据表中是否已经存在此属性值。(yii\validators\ExistValidator)

unique——唯一性
这个和exist差不多,用来检测值是否是唯一。(yii\validators\UniqueValidator)

string——字符串
对属性值进行长度判断,如最大长度、最短长度等。(yii\validators\StringValidator)

boolean——布尔型
用来检查属性的值是否为布尔值。(yii\validators\BooleanValidator)

default——默认值
这个是用来给属性设置默认值的。如当属性值为null的时候,给它设置为 空的默认值。(yii\validators\DefaultValueValidator)

required——必填
这个用来检查属性值是否为空。(yii\validators\RequiredValidator)

captcha——验证码
这个主要是在界面使用验证码的时候对验证码进行验证的。(yii\captcha\CaptchaValidator)

match——正则表达式
这个就比较强大了,用来检测属性值是否匹配给出的正则。上面所列出的基本都可以用这个实现。(yii\validators\RegularExpressionValidator)

其它:

safe——安全
这个不进行验证,仅仅用来指定属性值是安全的。(yii\validators\SafeValidator)

更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

yii2 怎么去掉jquery yii2 怎么去掉jquery Feb 17, 2023 am 09:55 AM

yii2去掉jquery的方法:1、编辑AppAsset.php文件,注释掉变量$depends里的“yii\web\YiiAsset”值;2、编辑main.php文件,在字段“components”下面添加配置为“'yii\web\JqueryAsset' => ['js' => [],'sourcePath' => null,],”即可去掉jquery脚本。

vue3+async-validator如何实现表单验证 vue3+async-validator如何实现表单验证 May 11, 2023 am 09:55 AM

搭建vue3的项目创建项目前这里我们首先要说明的是,我们使用的版本情况Nodejs:v17.5.0pnpm:7.0.0Vue:3.2.25首先我们Vite创建一个vue3的项目demo,名字就叫FormValidate,我们在命令行输入命令pnpmcreateviteFormValidate回车然后选择vue继续回车,说明我们已经初步创建了FormValidate(表单验证)项目根据命令行的提示,我们进入项目根目录,然后使用命令pnpminstall安装项目需要的依赖,当然这里使用pnpm是比n

Windows 11 PC 上实现无密码的方法分享 Windows 11 PC 上实现无密码的方法分享 Aug 13, 2023 pm 07:53 PM

如何在Windows11PC上实现无密码Windows你好打开“设置”应用。单击帐户。单击登录选项。在“其他设置”下,打开“要求Microsoft帐户使用WindowsHello”登录。Microsoft身份验证器应用程序在手机上下载并安装Microsoft身份验证器应用程序。它在Android和iOS上都可用。打开Microsoft身份验证器应用并使用您的Microsoft帐户登录。在Windows11设备上,打开“设置”应用。单击帐户。单击登录选项。在“其他设置”下,打开“要求Microso

精选几道CTF习题,带你学习yii2框架! 精选几道CTF习题,带你学习yii2框架! Feb 23, 2022 am 10:33 AM

本篇文章带大家了解yii2框架,分享几道CTF习题,通过它们来学习yii2框架,希望对大家有所帮助。

如何在ThinkPHP6中使用验证器 如何在ThinkPHP6中使用验证器 Jun 21, 2023 am 09:45 AM

随着互联网的不断发展,越来越多的人开始使用PHP来进行网站的开发。而在PHP中,使用框架可以大大提高开发效率,ThinkPHP就是其中非常流行的一个框架。在ThinkPHP中,验证器是一个十分重要的组件,可以帮助我们对用户提交的数据进行校验,保证数据的正确性。那么本篇文章就来介绍一下在ThinkPHP6中如何使用验证器。一、什么是验证器验证器是用于对数据进行

如何在CakePHP中创建自定义验证器? 如何在CakePHP中创建自定义验证器? Jun 05, 2023 pm 07:51 PM

CakePHP是一个流行的PHP框架,提供强大的数据验证功能。在开发Web应用程序时,数据验证是一个非常重要的任务,因为它可以帮助我们确保输入数据的正确性和安全性。CakePHP提供了一些内置的验证器,如必填字段、数字、电子邮件和唯一性验证。但是,在特定的情况下,我们可能需要创建自定义的验证器,以适应我们的应用程序的需求。在本文中,我们将探讨如何在CakeP

怎么使用YII2框架安装Redis扩展 怎么使用YII2框架安装Redis扩展 May 26, 2023 pm 06:41 PM

1.需要下载yii2-redis的master分支windows版本composer下载2.解压复制到vendor/yiisoft下面3.yiisoft下面extensions.php里面增加'yiisoft/yii2-redis'=>array('name'=>'yiisoft/yii2-redis','version'=>'2.0.

Yii框架中的验证器:确保数据的正确性 Yii框架中的验证器:确保数据的正确性 Jun 21, 2023 am 08:35 AM

Yii框架是一款高性能、可扩展、基于组件的PHP框架,自带了大量的强大工具和函数,可以轻松构建高效的Web应用程序。其中一个非常重要的组件就是验证器,主要用于确保数据的正确性。在本文中,我们将深入探讨Yii框架中的验证器,了解它的用途、使用方法和实现原理。一、什么是验证器验证器是指用来验证数据合法性的功能模块。在Yii框架中,主要有两种类型的验证器:内置验证

See all articles