具體步驟:
A.在build.php中按照實際需求修改定義模塊的內容;
B.修改Public/index.php,在代碼中加入:
// 讀取自動生成定義文件
$build = include '/../build.php';
// 運行自動生成
\think\Build::run($build,'test',true);
C.運行localhost/項目名稱/public/index.php
成功!
1.首先需要定義一個用於自動生成的規則定義文件,通常命名為build.php
。
默認的框架的根目錄下面自帶了一個build.php
示例參考文件,內容如下:
return [ // 生成運行時目錄 '__file__' => ['common.php'], // 定義index模塊的自動生成 'index' => [ '__file__' => ['common.php'], '__dir__' => ['behavior', 'controller', 'model', 'view'], 'controller' => ['Index', 'Test', 'UserType'], 'model' => [], 'view' => ['index/index'], ], // 。。。 其他更多的模塊定義 ];
可以給每個模塊定義需要自動生成的文件和目錄,以及MVC類。
__dir__
表示生成目錄(支持多級目錄)__file__
表示生成文件(不定義默認會生成 config.php 文件)- controller 表示生成controller類
- model表示生成model類
- view表示生成html文件(支持子目錄)
自動生成以APP_PATH
為起始目錄,__dir__
和 __file__
表示需要自動創建目錄和文件,其他的則表示為模塊自動生成。
模塊的自動生成則以 APP_PATH.'模塊名/'
為起始目錄。
並且會自動生成模塊的默認的Index訪問控制器文件用於顯示框架的歡迎頁面。
我們還可以在APP_PATH
目錄下面自動生成其它的文件和目錄,或者增加多個模塊的自動生成,例如:
return [ '__file__' => ['hello.php','test.php'], // 定義index模塊的自動生成 'index' => [ '__file__' => ['tags.php', 'user.php', 'hello.php'], '__dir__' => ['behavior', 'controller', 'model', 'view'], 'controller' => ['Index', 'Test', 'UserType'], 'model' => [], 'view' => ['index/index'], ], // 定義test模塊的自動生成 'test'=>[ '__dir__' => ['behavior','controller','model','widget'], 'controller'=> ['Index','Test','UserType'], 'model' => ['User','UserType'], 'view' => ['index/index','index/test'], ], ];