入口文件
ThinkPHP采用單一入口模式進行項目部署和訪問,無論完成什么功能,一個應用都有一個統一(但不一定是唯一)的入口。
應該說,所有應用都是從入口文件開始的,並且不同應用的入口文件是類似的。
入口文件定義
入口文件主要完成:
- 定義框架路徑、項目路徑(可選)
- 定義系統相關常量(可選)
- 載入框架入口文件(必須)
5.0默認的應用入口文件位於public/index.php
,內容如下:
// 定義應用目錄 define('APP_PATH', __DIR__ . '/../application/'); // 加載框架引導文件 require __DIR__ . '/../thinkphp/start.php';
入口文件位置的設計是為了讓應用部署更安全,public
目錄為web可訪問目錄,其他的文件都可以放到非WEB訪問目錄下面。
入口文件中還可以定義一些系統變量,用於相關的綁定操作(通常用於多個入口的情況),這個會在后面涉及,暫且不提。
給
APP_PATH
定義絕對路徑會提高系統的加載效率。
在有些情況下,你可能需要加載框架的基礎引導文件base.php
,該引導文件和start.php
的區別是不會主動執行應用,而是需要自己進行應用執行,下面是一個例子:
// 定義應用目錄 define('APP_PATH', __DIR__ . '/../application/'); // 加載框架基礎引導文件 require __DIR__ . '/../thinkphp/base.php'; // 添加額外的代碼 // ... // 執行應用 \think\App::run()->send();