yii2中的rules 自定義驗證規則詳解

yii2的一個強大之處之一就是他的Form組件,既方便又安全。有些小夥伴感受用yii一段時間了,好嘛,除了比tp"難懂"好像啥都沒有。
安全

領導安排搞一個註冊的功能,這傢伙刷刷刷的又是百度啥啥啥好的表單樣式,又是百度啥啥啥validate驗證,真替這傢伙捏把汗。
yii2

固然啦,廢話說在前頭,我們的重點喃,是要利用ActiveForm,而後怎麼去實現自定義驗證規則。
yii

先來講說場景:
ui

條件:①、有兩個字段分別是A和B ②、A有兩個值分別是1和2
this

需求是:當用戶選擇的A的值等於1的時候,B的值必須填寫,當A的值等於2的時候,B的值不寫也不要緊。其中A必選。
orm

咱們來看看用Yii2自帶的rules怎麼去實現
blog

首先在其關聯model上加上下面這句規則ci

/**
* @inheritdoc
*/
public function rules()
{
return [
[['B'], 'requiredByASpecial'],
];
}

 

/**
* 自定義驗證B
*/
public function requiredByASpecial($attribute, $params)
{
if ($this->A== 1) 
{
if ($this->B=== '')
$this->addError($attribute, "B的值不能夠爲空.");
}
}

 

上面的意思就是說當A等於1且B的值爲空時,返回錯誤信息"B的值不能夠爲空"。
it

以上只是舉了一個簡單的例子,能夠根據具體需求應用。
io

以上所述是小編給你們介紹的yii2 rules 驗證規則的所有內容,但願對你們有所幫助!

相關文章
相關標籤/搜索