Thinkphp 框架基礎(chǔ)之入口文件功能、定義與用法分析
本文實例講述了Thinkphp 框架基礎(chǔ)之入口文件功能、定義與用法。分享給大家供大家參考,具體如下:
入口文件
ThinkPHP采用單一入口模式進行項目部署和訪問,無論完成什么功能,一個應(yīng)用都有一個統(tǒng)一(但不一定是唯一)的入口。
應(yīng)該說,所有應(yīng)用都是從入口文件開始的,并且不同應(yīng)用的入口文件是類似的。
入口文件定義
入口文件主要完成:
- 定義框架路徑、項目路徑(可選)
- 定義調(diào)試模式和應(yīng)用模式(可選)
- 定義系統(tǒng)相關(guān)常量(可選)
- 載入框架入口文件(必須)
默認情況下,框架已經(jīng)自帶了一個應(yīng)用入口文件(以及默認的目錄結(jié)構(gòu)),內(nèi)容如下:
define('APP_PATH','./Application/'); require './ThinkPHP/ThinkPHP.php';
如果你改變了項目目錄(例如把Application更改為Apps),只需要在入口文件更改APP_PATH
常量定義即可:
define('APP_PATH','./Apps/'); require './ThinkPHP/ThinkPHP.php';
注意:
APP_PATH
的定義支持相對路徑和絕對路徑,但必須以“/”結(jié)束
如果你調(diào)整了框架核心目錄的位置或者目錄名,只需要這樣修改:
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
路徑定義也必須以“/
”結(jié)尾。
給THINK_PATH
和APP_PATH
定義絕對路徑會提高系統(tǒng)的加載效率。
入口文件中的其他定義
一般不建議在入口文件中做過多的操作,但可以重新定義一些系統(tǒng)常量,入口文件中支持定義(建議)的一些系統(tǒng)常量包括:
常量 | 描述 |
---|---|
THINK_PATH | 框架目錄 |
APP_PATH | 應(yīng)用目錄 |
RUNTIME_PATH | 應(yīng)用運行時目錄(可寫) |
APP_DEBUG | 應(yīng)用調(diào)試模式 (默認為false) |
STORAGE_TYPE | 存儲類型(默認為File) |
APP_MODE | 應(yīng)用模式(默認為common) |
注意:所有路徑常量都必須以“/”結(jié)尾
例如,我們可以在入口文件中重新定義相關(guān)目錄并且開啟調(diào)試模式:
// 定義應(yīng)用目錄 define('APP_PATH','./Apps/'); // 定義運行時目錄 define('RUNTIME_PATH','./Runtime/'); // 開啟調(diào)試模式 define('APP_DEBUG',True); // 更名框架目錄名稱,并載入框架入口文件 require './Think/ThinkPHP.php';
這樣最終的應(yīng)用目錄結(jié)構(gòu)如下:
www WEB部署目錄(或者子目錄)
├─index.php 應(yīng)用入口文件
├─Apps 應(yīng)用目錄
├─Public 資源文件目錄
├─Runtime 運行時目錄
└─Think 框架目錄
入口文件中還可以定義一些系統(tǒng)變量,用于相關(guān)的綁定操作(通常用于多個入口的情況)
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計有所幫助。
- thinkphp 框架數(shù)據(jù)庫切換實現(xiàn)方法分析
- Thinkphp 框架配置操作之動態(tài)配置、擴展配置及批量配置實例分析
- Thinkphp 框架配置操作之配置加載與讀取配置實例分析
- Thinkphp 框架基礎(chǔ)之源碼獲取、環(huán)境要求與目錄結(jié)構(gòu)分析
- Thinkphp 框架擴展之驅(qū)動擴展實例分析
- Thinkphp 框架擴展之應(yīng)用模式實現(xiàn)方法分析
- Thinkphp 框架擴展之Widget擴展實現(xiàn)方法分析
- Thinkphp 框架擴展之行為擴展原理與實現(xiàn)方法分析
- Thinkphp 框架擴展之標簽庫驅(qū)動原理與用法分析
- 淺談PHP之ThinkPHP框架使用詳解
相關(guān)文章
詳解PHP內(nèi)置訪問資源的超時時間 time_out file_get_contents read_file
本篇文章是對PHP內(nèi)置訪問資源的超時時間time_out file_get_contents read_file進行了詳細的分析介紹,需要的朋友參考下2013-06-06laravel 配置路由 api和web定義的路由的區(qū)別詳解
今天小編就為大家分享一篇laravel 配置路由 api和web定義的路由的區(qū)別詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09PHP統(tǒng)計二維數(shù)組元素個數(shù)的方法
數(shù)據(jù)表里面的字段 content 存儲了一個以逗號分割的字符串,最大有20個數(shù),最大數(shù)字為40。比如3,24,33,40類似字樣的數(shù)字序列。其實就是一個保存了多項投票結(jié)果的字段啦?,F(xiàn)在需要統(tǒng)計每個數(shù)字的個數(shù),也就是每個投票項有多少人投了,并排序2013-11-11調(diào)用WordPress函數(shù)統(tǒng)計文章訪問量及PHP原生計數(shù)器的實現(xiàn)
這篇文章主要介紹了調(diào)用WordPress函數(shù)統(tǒng)計文章訪問量及PHP原生計數(shù)器的實現(xiàn),文中作者也提到了WordPress中的兩款插件不過出于性能考慮并不推薦插件方式的實現(xiàn),需要的朋友可以參考下2016-03-03