加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 在Yii 2中验证内联验证器中的多个属性

发布时间:2020-12-13 21:58:12 所属栏目:PHP教程 来源:网络整理
导读:我知道您可以使用 inline validator验证单个属性,例如: ['country','validateCountry']public function validateCountry($attribute,$params){ if (!in_array($this-$attribute,['USA','Web'])) { $this-addError($attribute,'The country must be either "
我知道您可以使用 inline validator验证单个属性,例如:

['country','validateCountry']

public function validateCountry($attribute,$params)
{
    if (!in_array($this->$attribute,['USA','Web'])) {
        $this->addError($attribute,'The country must be either "USA" or "Web".');
    }
}

但是,我如何将多个属性传递给验证器? …或者我应该在验证器中通过$this引用它们?

解决方法

而不是直接访问额外的字段,例如使用$this->电子邮件,您可以将附加属性作为params中的字段传递,例如 compareValidator如何工作,即

['username','customValidator','params' => ['extraFields' => 'email']]


public function customValidator($attribute,$params) {
    //access extrafields using $this->{$params['extraFields']}
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读