在Yii2.x框架中,引入了模組(Modules)這個概念,那麼什麼是模組呢? (建議學習中:yii架構)
#模組中使用元件為獨立的軟體單元,由模型,視圖,控制器和其他支援組件,使用者可存取應用程式碼已安裝的模組的控制器, 模組被當成小應用主體來看待,和應用主體不同的是, 模組不能單獨部署,必須屬於某個應用主體。
上面的描述是簡單理解就是你在現有的框架中又創建了一個子應用主體,但是這個子應用必須依賴框架本身這個主應用主體,不能獨立部署。
看圖,表現的比較直接:
#圖中紅框所示的module就是模組所在的位置,其中存在一個admin模組。 (圖片的logo擋住了最下面的一個非常重要的文件,Admin.php)。
建立及配置模組
模組被組織成稱為base path 的目錄, 在該目錄中有子目錄如controllers,models,views 分別為對應控制器,模型,視圖和其他程式碼,和應用程式非常類似。以我上圖範例為例:
admin/ Admin.php 模块类文件 config.php 模块配置文件(自行手动创建) controllers/ 包含控制器类文件 models/ 包含模型类文件 views/ 包含控制器视图文件和布局文件
模組類別檔案
#每個模組都有一個繼承yii\base\Module 的模組類, 該類別檔案直接放在模組的base path 目錄下, 並且能被自動載入。當一個模組被訪問, 和 應用主體實例 類似會創建該模組類別唯一實例,模組實例用來幫模組內程式碼共享資料和組件。
以上是yii2 如何使用module的詳細內容。更多資訊請關注PHP中文網其他相關文章!