如何使用ThinkPHP5 ,自動生成目錄?


 

具體步驟:

 

 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'],
    ],
 ];

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM