YII2 自定義規則

2022-07-26 15:45:12 字數 690 閱讀 1368

本文版權歸作者,歡迎**,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連線,否則保留追究法律責任的權利。

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

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

先來說說場景:

條件:①、有兩個字段分別是a和b ②、a有兩個值分別是1和2

需求是:當使用者選擇的a的值等於1的時候,b的值必須填寫,當a的值等於2的時候,b的值不寫也沒關係。其中a必選。

我們來看看用yii2自帶的rules怎麼去實現

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

/**

* @inheritdoc

*/public function rules()

然後在該model裡面去實現requiredbyaspecial方法即可

/**

* 自定義驗證b

*/public function requiredbyaspecial($attribute, $params)

}

上面的意思就是說當a等於1且b的值為空時,返回錯誤資訊"b的值不可以為空"。

以上只是舉了乙個簡單的例子,可以根據具體需求應用。

其他案例:

Yii2 自定義類

最近開始研究yii2,發現很多問題,比如自定義類或模組。網上搜了一大堆複製文件的沒講實際應用,這次決定自己寫下來填坑。其實很簡單,yii2文件沒讀的請先到這裡 接下來按步驟走不拖拉 1.寫乙個自定義的類,內容隨意,可以放到任意目錄 憑喜好 比如 這裡假設放到 vendor ns extensions...

YII2 自定義日誌路徑

yii 提供的日誌寫入方法 components log預設配置 log tracelevel yii debug 3 0 targets class yii log filetarget levels error warning 現修改配置如下 log tracelevel yii debug 3...

Yii2自定義日誌功能

namespace use yii useyii web controller use use yii log filetarget 這裡匯入 發現有問題的訂單 立馬用日誌儲存起來 time microtime true log new filetarget log logfile yii getr...