本文實例講述了Thinkphp 框架基礎之入口文件功能、定義與用法。分享給大家供大家參考,具體如下:
入口文件
ThinkPHP采用單一入口模式進行項目部署和訪問,無論完成什么功能,一個應用都有一個統(tǒng)一(但不一定是唯一)的入口。
應該說,所有應用都是從入口文件開始的,并且不同應用的入口文件是類似的。
入口文件定義
入口文件主要完成:
- 定義框架路徑、項目路徑(可選)
- 定義調試模式和應用模式(可選)
- 定義系統(tǒng)相關常量(可選)
- 載入框架入口文件(必須)
默認情況下,框架已經自帶了一個應用入口文件(以及默認的目錄結構),內容如下:
define('APP_PATH','./Application/');
require './ThinkPHP/ThinkPHP.php';
如果你改變了項目目錄(例如把Application更改為Apps),只需要在入口文件更改APP_PATH
常量定義即可:
define('APP_PATH','./Apps/');
require './ThinkPHP/ThinkPHP.php';
注意:APP_PATH
的定義支持相對路徑和絕對路徑,但必須以“/”結束
如果你調整了框架核心目錄的位置或者目錄名,只需要這樣修改:
define('APP_PATH','./Application/');
require './Think/ThinkPHP.php';
也可以單獨定義一個THINK_PATH常量用于引入:
define('APP_PATH','./Application/');
define('THINK_PATH',realpath('../Think').'/');
require THINK_PATH.'ThinkPHP.php';
和APP_PATH
一樣THINK_PATH
路徑定義也必須以“/
”結尾。
給THINK_PATH
和APP_PATH
定義絕對路徑會提高系統(tǒng)的加載效率。
入口文件中的其他定義
一般不建議在入口文件中做過多的操作,但可以重新定義一些系統(tǒng)常量,入口文件中支持定義(建議)的一些系統(tǒng)常量包括:
常量 |
描述 |
THINK_PATH |
框架目錄 |
APP_PATH |
應用目錄 |
RUNTIME_PATH |
應用運行時目錄(可寫) |
APP_DEBUG |
應用調試模式 (默認為false) |
STORAGE_TYPE |
存儲類型(默認為File) |
APP_MODE |
應用模式(默認為common) |
注意:所有路徑常量都必須以“/”結尾
例如,我們可以在入口文件中重新定義相關目錄并且開啟調試模式:
// 定義應用目錄
define('APP_PATH','./Apps/');
// 定義運行時目錄
define('RUNTIME_PATH','./Runtime/');
// 開啟調試模式
define('APP_DEBUG',True);
// 更名框架目錄名稱,并載入框架入口文件
require './Think/ThinkPHP.php';
這樣最終的應用目錄結構如下:
www WEB部署目錄(或者子目錄)
├─index.php 應用入口文件
├─Apps 應用目錄
├─Public 資源文件目錄
├─Runtime 運行時目錄
└─Think 框架目錄
入口文件中還可以定義一些系統(tǒng)變量,用于相關的綁定操作(通常用于多個入口的情況)
更多關于thinkPHP相關內容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結》、《ThinkPHP常用方法總結》、《codeigniter入門教程》、《CI(CodeIgniter)框架進階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術總結》。
希望本文所述對大家基于ThinkPHP框架的PHP程序設計有所幫助。
您可能感興趣的文章:- thinkphp 框架數據庫切換實現(xiàn)方法分析
- Thinkphp 框架配置操作之動態(tài)配置、擴展配置及批量配置實例分析
- Thinkphp 框架配置操作之配置加載與讀取配置實例分析
- Thinkphp 框架基礎之源碼獲取、環(huán)境要求與目錄結構分析
- Thinkphp 框架擴展之驅動擴展實例分析
- Thinkphp 框架擴展之應用模式實現(xiàn)方法分析
- Thinkphp 框架擴展之Widget擴展實現(xiàn)方法分析
- Thinkphp 框架擴展之行為擴展原理與實現(xiàn)方法分析
- Thinkphp 框架擴展之標簽庫驅動原理與用法分析
- 淺談PHP之ThinkPHP框架使用詳解