Yii 常量的輕鬆管理

2021-07-09 12:25:07 字數 993 閱讀 2354

我經常在不同的地方使用模型中的常量(基本狀態常量),當常量改變時我不得不在使用每處它的**中修改。

為了解決這個問題我使用了乙個方法getconstants().

[php]

public static function getconstants($token,$objectclass)

return $tokenconstants;

}

為了給每個 activerecord 類新增此方法,我們可以寫個基類

[php]

class activerecord extends cactiverecord

return $tokenconstants;

}}

然後所有的模型類都繼承此類而不是 cactiverecord

[php]

class media extends activerecord

在模型規則,方法,或模型外使用self::getconstants()

[php]

class media extends activerecord

//..

public static function getstatuses()

public static function gettypes()

}

其他地方

[php]

print_r( media::getconstants('status_','media') );

//or create media method and use simplified

print_r( media::getstatuses() );

當然如果你的模型中只有兩個常量你可以不使用它,但當你的模型中有大量常量時建議你使用。

Yii2 例項管理

yii2框架沒有提供類似zendframework3中提供的servicemanager.那麼yii2框架是如何管理物件例項的呢?長時間使用yii2框架的童鞋一定已經適應了物件中的public變數,以及乙個來自yii base component的 set 魔術方法來完成物件構造的過程,但是新鳥如何...

使用logback輕鬆管理日誌

最近才開始在專案中使用logback,有一種相見恨晚的感覺,因為它很輕易的滿足了我的幾個需求 1.配置簡單,易於上手 2.乙個日誌檔案中只能某乙個級別的日誌 3.乙個類中可以指定多個不同的日誌,並且生成的每個日誌檔案中只包含其本身的內容 4.可以關閉或者開啟某幾個包的日誌,並且可以設定不同的包使用不...

使用logback輕鬆管理日誌

最近才開始在專案中使用logback,有一種相見恨晚的感覺,因為它很輕易的滿足了我的幾個需求 1.配置簡單,易於上手 2.乙個日誌檔案中只能某乙個級別的日誌 3.乙個類中可以指定多個不同的日誌,並且生成的每個日誌檔案中只包含其本身的內容 4.可以關閉或者開啟某幾個包的日誌,並且可以設定不同的包使用不...