2013-02-25 61 views
0

在codeigniter項目中,我必須在一個控制器中執行一些操作。
我編寫了一個函數中的所有東西,現在我需要在需要時調用。
我認爲寫這個函數在多個控制器中是不好的。
我有2種選擇,
在codeigniter中哪個更好?在助手中添加函數或在擴展基類中添加函數

  1. 創建一個幫助和寫入,這些功能和包括在必要控制器輔助。
  2. 由於我擴展了CI基本控制器(My_Controller),並且我的大多數控制器都擴展了該控制器,所以我也可以將此函數寫入到我的基本控制器中。

我很困惑哪一個更好,正確的方法?
哪一個會加快這個過程?
第二種方式減慢網站?

+0

這幾乎是擴展核心類的能力存在的原因。我不確定混淆的地方,特別是如果你已經寫了MY_Controller。 – 2013-02-25 12:48:21

+0

是的。閱讀他人的答案並比較我的代碼,我認爲MY_controller是最好的選擇,因爲它不需要包含在我當前的代碼中。如果我把所需的東西放在庫或幫助器中,我需要將它們加載到其他控制器中。我認爲通過考慮性能和速度MY_controller更好。 – 2013-02-26 07:02:17

回答

1

它們對於所有意圖和目的都是相同的。

使用助手允許你做的代碼移植,這樣你就可以在其他項目中使用,或從任何地方的代碼庫調用,例如

格式化函數的情況下,如果正在計劃把它放在一個控制器,然後MY_Controller是最好的選擇

1

只是爲了幫助你在你努力我做的是:(這只是我)

  1. 如果我需要用的東西在的意見,我使用了一個定製的或helper內置的。

  2. 如果我想要做其他的控制器將被使用過,一個控制器上的東西,不希望它弄亂或擠走我控制器I採用library(幾乎可以使用helper但我選擇使用庫)

  3. 如果我想要加載讓我們說一種方法,影響全球或某些控制器我使用base controller。 (你也可以使用helperlibrary

關鍵是你是不是僅限於一個,選擇最適合自己的最好,俗話說,有很多種方法對皮膚一隻貓,但請不要't skin a cat ..