我在CodeIgniter PHP項目中使用MVC模式,我想知道爲了確保代碼和可伸縮性的可讀性,構建模型方法的最佳方法是什麼。PHP模型:一個或多個setter通過數據庫操作?
總之,這樣做更好嗎? :
public function set_account_state($new_state) {
// UPDATE a database record state to $new_state [0, 1 or 2]
}
或者這個? :
public function reject_account() {
// UPDATE a database record state to 0
}
public function accept_account() {
// UPDATE a database record state to 1
}
public function pending_account() {
// UPDATE a database record state to 2
}
或者也許另一種方式?
另外,在這種情況下,是否有一個良好的函數命名實踐?
我同意這個問題。帳戶狀態管理應該在一個地方。 '$ state'的有效值可以由常量提供服務,從而提高可讀性並理解參數值應該/可能是什麼。這並不意味着你不能或不應該在類中創建私有或受保護的「幫助」函數來處理每個特定的狀態。但公共接口應該是一個單一的功能。 – DFriend