介绍
如何在Yii2框架中自定义验证规则?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
class AbcModel extends 模型 { public 才能;aaa美元; public 才能,bbb美元; public 才能,bbb美元; ,/* * ,,*,验证提交表的形式单 ,,* ,,*,@return 数组 ,,*/public 才能;function 规则() {才能 ,,,return [ ,,,,,//,自定义验证 ,,,,,[[& # 39;aaa # 39;,, & # 39; bbb # 39;,, & # 39; ccc # 39;],, & # 39; customValidationCityCode& # 39;], ,,,); ,,} public 才能;function  customValidationCityCode(属性,美元,美元params) {才能 ,,,if (!收取(这→美元属性) ,,,,,| |,空(这→美元属性) ,,,,,| |,! is_array(这→美元属性) ,,,),{ ,,,,,这个→美元addError(属性,美元,“值为空或不存在或类型不符合!”); ,,,,,返回; ,,,} ,,} }
上面的代码意思就是,当启用<代码>(新Abc())→验证()> 代码后就会根据规则顺序验证属性,而customValidationCityCode这个自定义验证方式是有多少个需要验证的参数就会调用多少次customValidationCityCode方法,customValidationCityCode方法中的参数属性就美元是分别对应aaa ,bbb ccc
<李>
$ skipOnError:跳过错误信息,意思就是如果有错误信息存在也会跳过
李> <李>$ skipOnEmpty:跳过值为空的属性,就算是该属性需要验证,也会跳过不验证。
李>yii中实例控制器是利用反射机制实例化的,在yii2 \ di供应商\ yiisoft \ yii2 \ \容器。php文件中
关于如何在Yii2框架中自定义验证规则问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。