2011-05-03 37 views
0

在其他php框架(kohana,zend,fuel)中,可以根據目錄路徑自動加載文件。是否有可能在笨要做到這一點,這樣我就可以例如負荷模型,通過鍵入類似在codeigniter中自動加載文件遍歷類型

models_category_users 

(其中,這將映射到模型/分類/ users.php)?

進出口使用笨反應器,版本2.0.2

+0

自動加載是什麼意思? 在CodeIgniter中,你通常不包含文件,但讓CI爲你做。 – 2011-05-03 20:27:46

+0

給出上面的例子,我可以擴展類'models_category_users'而不必包含文件,它會自動找到類本身。 – richzilla 2011-05-03 20:31:10

+0

盡我所知,如果你打電話給擴展類MY_Users,它會自動加載所需的類。 我相信對於圖書館來說這是真的,對模型不確定。 – 2011-05-03 20:39:57

回答

1

CodeIgniter沒有內置PHP自動加載,添加它的唯一方法是編寫自己的自動加載器。我爲CI寫了一篇非常廣泛的文章:https://bitbucket.org/jschreuder/augmentedci/src/554e3d956a15/application/config/autoloader.php - 儘管我現在可能會做一些不同的事情。如果你要搜索論壇,你可能會找到一些選擇。

您會遇到的一個問題是,CI將「自動加載」這個詞用於「永遠加載」的東西,或者「對每個請求自動加載」。你想要的是「按需自動加載」課程,但對許多CI用戶來說這將是一個外國概念。

2

您可以自動加載文件系統在廣泛的應用程序/ config文件夾中autoload.php文件。爲了擴展默認模型,您可以在application/core文件夾中創建一個名爲MY_Model.php的文件。 (您可以在application/config/config.php中更改MY_的前綴)

否則,您將使用$this->load->model('category/users');加載models/category文件夾中的users.php模型。您也可以指定包路徑...參見本頁底部:http://codeigniter.com/user_guide/libraries/loader.html