下載ThinkPHP 3.1.3 框架包解壓縮後檔案結構:
新專案入口檔index.php├─ Common 框架公用檔案目錄
├─ Conf 框架設定檔目錄
├─ Extend 框架擴充目錄
├─ Lang 框架系統語言目錄
├─ Lib 系統核心基底類別庫目錄
│ ├─ Behavior 內建行為類別庫
│ ├─ Core 核心類別庫包
│ ├─ Driver 內建驅動類別庫包
│ │ ├─ Cache 內建快取驅動
│ │ ├─ Db 內建資料庫驅動
│ │ ├ TagLib 內建標籤。 #│ ├─ Template 內建範本引擎驅動
├─ Tpl 系統範本目錄
├─ ThinkPHP.php 框架入口檔案
<?php require './ThinkPHP/ThinkPHP.php';
#├─ Common 專案公共檔案目錄├─ Conf 專案設定目錄
這種方式的入口檔案index.php 是存在專案目錄之內。也可以入口檔案移動到app 目錄的外面,修改入口檔案index.php :
├─ Lang 專案語言套件目錄
├─ Lib 專案類別庫目錄
│ ├─ Action Action 類別庫目錄
│ ├模式─ Behavior 行為類別庫目錄
類別庫目錄
│ ├─ Widget Widget類別庫目錄
├─ Runtime 專案執行時間目錄
│ ├─ Cache 範本快取目錄
│ ├─ Data Logs 日誌文件目錄
│ ├─ Temp 臨時緩存目錄
├─ ThinkPHP 框架目錄
├─ Tpl 項目模板目錄
├─ index.php 項目入口文件
<?php //定义项目名称 define('APP_NAME', 'Application'); // 定义项目路径 define('APP_PATH', './Application/'); //加载框架入口文件 require './ThinkPHP/ThinkPHP.php';
目錄結構:
專案部署方式分為兩種,一種是應用部署,每個專案對應一個入口文件,例如前台入口文件對應index.php,後台入口文件對應admin.php,這種專案部署是ThinkPHP推薦的方式;
前台入口文件:
<?php define('APP_NAME', 'Home'); define('APP_PATH', './Home/'); require './ThinkPHP/ThinkPHP.php';
後台入口文件:
<?php define('APP_NAME', 'Admin'); define('APP_PATH', './Admin/'); require './ThinkPHP/ThinkPHP.php';
另一種是模組分組部署是把所有的應用對應到一個入口文件,項目的模板文件還是放到專案的Tpl目錄下面,只是將外部調用的資源文件,包括圖片Js和Css統一放到網站的公共目錄Public下面,分Images、Js和Css子目錄存放,如果有可能的話,甚至也可以把這些資源檔案單獨放置一個外部的伺服器遠端調用,並進行最佳化。
模組分組需要配置APP_NAME和APP_PATH;
在WEB 根目錄建立專案目錄App,且拷貝框架包ThinkPHP 至同級目錄,同時在同級建立所有專案公用資源目錄Public、所有專案公用上傳目錄Uploads 以及入口檔案index.php:
#入口檔index.php:
<?php define('APP_NAME', 'App'); define('APP_PATH', './App/'); //开启debug,不加载缓存文件 define('APP_DEBUG', true); require './ThinkPHP/ThinkPHP.php';
透過url 存取index.php ,初始化專案環境後,App 目錄下自動產生的目錄:
然後在App/Conf/config.php 設定檔中,配置分組選項:
<?php return array( //'配置项'=>'配置值' 'APP_GROUP_LIST' => 'Admin,Home', 'DEFAULT_GROUP' => 'Home', );
如果此時存取index.php 入口文件,ThinkPHP 會報錯:
因為在公共設定檔中開啟了模組分組,但對應的分組目錄並沒有創建,需要手動建立Admin 和Home 群組的各自設定檔:Conf 目錄下建立Admin 和Home 目錄。
然後分別在目錄中建立config.php 設定檔;App/Lib/Action 目錄也需要建立Admin 和Home 目錄,然後將預設建立的IndexAction.class.php 檔案移到App/Lib/Action /Home 目錄,此時存取入口檔案不會報錯,專案部署成功:
#
如果隱藏入口文件,兩者的url位址看起來幾乎一樣:
#推薦教學:《TP5 》
以上是thinkphp3.1專案開發部署的詳細內容。更多資訊請關注PHP中文網其他相關文章!