2012-07-28 109 views
1

已禁用自動加載分貝只是因爲我的網站很多頁面不需要數據庫連接或處理。如果我需要數據庫處理,當我的頁面需要數據庫支持時,我手動執行$this->load->database();。現在codeigniter自動加載或不加載

,我想知道這是: 我會使自動裝載和配置文件設置$db['default']['autoinit'] = FALSE;。這是否會像上面一樣工作?我的意思是,當相關頁面只需要db時(不是在每個頁面調用中),db會被加載,這正是我想要的嗎?

感謝

回答

2

其實答案是NO

如果啓用了auto-loading然後它會被自動加載在控制器內,但如果你設置autoinit=false,那麼它不會連接到數據庫時,庫加載,因爲默認情況下,db library連接到數據庫時加載。

autoinit - 當磁帶庫加載時是否自動連接到數據庫 。如果設置爲false,則在執行第一個查詢之前,連接將佔用 位置。

autoinit=false連接將要進行的第一query發生之前,但它會被自動加載,將在每一個控制器可用。

Read Here

+1

因此,就性能而言,我應該禁用**自動加載**並繼續使用手動連接'$ this-> load-> database();'因爲我不需要db支持。我對嗎? – BentCoder 2012-07-29 14:02:19

+1

是的,你是絕對正確的。 – 2012-07-29 14:15:12

+0

感謝Heera,我問了一個[問題在這裏](http://stackoverflow.com/questions/11710039/codeigniter-this-db-reconnect-usage)這可能也在你的領域。你能看看它嗎?再次感謝 – BentCoder 2012-07-29 14:33:43