我只是想知道是否有人可以分享一個建議。 我正在構建大型Codeigniter應用程序,並且正在考慮將一些模型對象放入$GLOBALS
。我應該把codeigniter模型對象放到全局變量中嗎
這樣,我可以在Wordpress中執行類似global $post;
或global $wpdb
的操作。
這是否有意義,它是一個好主意嗎?在這種情況下,我應該先自動加載這些模型嗎?
我只是想知道是否有人可以分享一個建議。 我正在構建大型Codeigniter應用程序,並且正在考慮將一些模型對象放入$GLOBALS
。我應該把codeigniter模型對象放到全局變量中嗎
這樣,我可以在Wordpress中執行類似global $post;
或global $wpdb
的操作。
這是否有意義,它是一個好主意嗎?在這種情況下,我應該先自動加載這些模型嗎?
使用單例模式污染全局名稱空間不是一個好主意。當您不在CodeIgniter超級對象中時,只需使用$CI =& get_instance();
無論如何,您爲什麼要這麼做?你想要這個的原因是什麼?通過省略this->
來減少寫入?情況並非如此,因爲您必須在每個文件和函數中編寫global $post
。
你錯過了面向對象編碼的全部想法... 如果你想重用對象使用依賴注入容器。
將任何東西放入OO代碼的全局名稱空間中顯然是錯誤的。
感謝您的回覆。我覺得它很有用。 自動加載模型如何? –
那呢?這是一種完全正常且常見的做法,儘可能多地加載,但往往只加載項目中每個頁面所需的加載項,因爲您無法爲任何單個頁面加載它們。 –
我在考慮自動加載模型,如用戶和文章。感謝您的回覆 –