我們的系統一般會分為前臺模塊( index ) 以及 后臺模塊 ( admin )。我們初始化安裝 thinkphp5 之后,系統會默認創建一個前臺模塊,但是其文件夾和文件不是完整的。那么,我們該如何創建 擁有前臺 和 后臺模塊的 thinkphp5 應用呢?很辛運,thinkphp5 官方提供了自動生成目錄功能。
>[info] ThinkPHP5.0 具備自動創建功能,可以用來自動生成需要的模塊及目錄結構和文件等,自動生成主要調用\think\Build類庫。
默認的框架的根目錄下面自帶了一個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訪問控制器文件用于顯示框架的歡迎頁面。
因此,我們在 build.php 中做如下配置:
~~~
<?php
return [
// 生成應用公共文件
'__file__' => ['common.php', 'config.php', 'database.php'],
// 后臺模塊
'admin' => [
'__file__' => ['common.php', 'config.php', 'database.php'],
'__dir__' => ['behavior', 'controller', 'model', 'view'],
'controller' => ['Index'],
'model' => [],
'view' => ['index/index'],
],
// 前臺模塊
'index' => [
'__file__' => ['common.php', 'config.php', 'database.php'],
'__dir__' => ['behavior', 'controller', 'model', 'view'],
'controller' => ['Index'],
'model' => [],
'view' => ['index/index'],
]
// 其他更多的模塊定義
];
~~~
>[danger] 運行下面的命令之前,確保你的 php命令行模式 可以運行。
**首先進入系統的根目錄**,默認會讀取應用目錄application下面的build.php 作為自動生成的定義文件,如果你的定義文件位置不同,則需要使用--config參數指定如下:
~~~
>php think build --config build.php
~~~
表示讀取根目錄下的build.php文件。
輸入上面的命令,你會看到:
~~~
Successed
~~~

此時,你就會在 phper 下面的 application 下,看到完整的 admin 和 index 文件夾。
訪問 www.phper.com 和 www.phper.com/admin 均可看到頁面。
>[danger] 如果你訪問 www.phper.com/admin 出現如下錯誤:
No input file specified.
那么,請打開 public/.htaccess 文件,將 index.php/$1 修改為 index.php?/$1
- 前言
- 安裝thinkphp5
- 快速搭建前后臺模塊
- 系統登錄的實現
- 圖形驗證碼的實現
- 使用layer完成用戶增刪改查
- 用戶列表的展示
- 增加用戶
- layer彈出層的使用1
- layer彈出層的使用2
- 編輯用戶
- 刪除用戶
- 重構用戶列表
- laypage分頁插件的應用
- laytpl模板引擎的應用
- 完成重構
- 其他layer系列插件
- upload實現文件圖片的異步上傳
- laytree樹形菜單
- 省市縣三級聯動
- datable的應用
- UEditor的使用
- 新聞小爬蟲的實現
- 頁面靜態化的實現
- 通過phpexcel導入數據
- ztree樹形菜單
- 生成二維碼
- 權限設計
- 從rbac到auth
- auth前的準備工作
- auth權限設計
- auth的最終呈現
- php常用函數合集
- 生成隨機IP
- 身份證驗證
- 對象轉換成數組
- 無限極分類
- 通過ip定位城市
- 源碼下載