Yii核心验证器api详解(4)

<?php [ // a1 需要是在由“a1”属性表示的列中的唯一 ['a1', 'unique'], // a1 必须是唯一的,但列a2将用于检查的a1值的唯一性 ['a1', 'unique', 'targetAttribute' => 'a2'], // a1和a2的需要是唯一的,并且它们都将收到错误消息 [['a1', 'a2'], 'unique', 'targetAttribute' => ['a1', 'a2']], // a1和a2的需要是唯一的,只有a1将收到错误消息 ['a1', 'unique', 'targetAttribute' => ['a1', 'a2']], // a1需要通过检查的两个a2和a3的唯一性(使用a1的值)是唯一的 ['a1', 'unique', 'targetAttribute' => ['a2', 'a1' => 'a3']], ] ?>

这验证检查,如果输入的值是表列中的唯一。它仅适用于活动记录模型的属性。它支持验证对任何单个列或多个列。

targetClass: 应该是被用于验证查找输入值的活动记录类的名字。如果没有设置,将要使用的类目前正在验证该模型的.
targetAttribute: 应该用来验证输入值的唯一性在targetClass的属性的名称。如果没有设置,将使用目前正在验证的属性的名称。可以使用阵列来验证多列的唯一性的同时。数组的值是将被用于验证唯一性的属性,而数组键是其值要验证的属性。如果键和值都是一样的,你可以指定的值。
filter: a额外的过滤器被应用到用于检查输入值的唯一性的数据库查询。这可以是一个字符串或代表附加查询条件的数组(参考 yii\db\Query::where() 查询条件的格式), 或者是一个匿名函数像: function ($query), 其中$query是你可以在函数修改查询对象。

21. url 地址验证

<?php [ // 检查 "website" 是一个有效的 URL. 前置 "http://" 到 "website" 属性 // 如果它不具有一个URI模式 ['website', 'url', 'defaultScheme' => 'http'], ] ?>

validSchemes: 一个数组指定URI方案应被认为有效。默认为['HTTP','HTTPS'],意思是HTTP和HTTPS URL被认为是有效的。
defaultScheme: 默认URI方案要预先考虑到输入,如果它不具有方案的一部分。默认为null,意味着不修改输入值。
enableIDN:验证是否应考虑到IDN(国际化域名)。默认为false。需要注意的是,为了使用IDN验证您必须安装并启用国际PHP扩展,否则异常将会被抛出。

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

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/719a27a9b76a150c30e4b6a246551cb7.html