Thinkphp 框架基礎(chǔ)之入口文件功能、定義與用法分析
本文實(shí)例講述了Thinkphp 框架基礎(chǔ)之入口文件功能、定義與用法。分享給大家供大家參考,具體如下:
入口文件
ThinkPHP采用單一入口模式進(jìn)行項(xiàng)目部署和訪問,無論完成什么功能,一個(gè)應(yīng)用都有一個(gè)統(tǒng)一(但不一定是唯一)的入口。
應(yīng)該說,所有應(yīng)用都是從入口文件開始的,并且不同應(yīng)用的入口文件是類似的。
入口文件定義
入口文件主要完成:
- 定義框架路徑、項(xiàng)目路徑(可選)
- 定義調(diào)試模式和應(yīng)用模式(可選)
- 定義系統(tǒng)相關(guān)常量(可選)
- 載入框架入口文件(必須)
默認(rèn)情況下,框架已經(jīng)自帶了一個(gè)應(yīng)用入口文件(以及默認(rèn)的目錄結(jié)構(gòu)),內(nèi)容如下:
define('APP_PATH','./Application/');
require './ThinkPHP/ThinkPHP.php';
如果你改變了項(xiàng)目目錄(例如把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';
也可以單獨(dú)定義一個(gè)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)用運(yùn)行時(shí)目錄(可寫) |
| APP_DEBUG | 應(yīng)用調(diào)試模式 (默認(rèn)為false) |
| STORAGE_TYPE | 存儲類型(默認(rèn)為File) |
| APP_MODE | 應(yīng)用模式(默認(rèn)為common) |
注意:所有路徑常量都必須以“/”結(jié)尾
例如,我們可以在入口文件中重新定義相關(guān)目錄并且開啟調(diào)試模式:
// 定義應(yīng)用目錄
define('APP_PATH','./Apps/');
// 定義運(yùn)行時(shí)目錄
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 運(yùn)行時(shí)目錄
└─Think 框架目錄
入口文件中還可以定義一些系統(tǒng)變量,用于相關(guān)的綁定操作(通常用于多個(gè)入口的情況)
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
- thinkphp 框架數(shù)據(jù)庫切換實(shí)現(xiàn)方法分析
- Thinkphp 框架配置操作之動態(tài)配置、擴(kuò)展配置及批量配置實(shí)例分析
- Thinkphp 框架配置操作之配置加載與讀取配置實(shí)例分析
- Thinkphp 框架基礎(chǔ)之源碼獲取、環(huán)境要求與目錄結(jié)構(gòu)分析
- Thinkphp 框架擴(kuò)展之驅(qū)動擴(kuò)展實(shí)例分析
- Thinkphp 框架擴(kuò)展之應(yīng)用模式實(shí)現(xiàn)方法分析
- Thinkphp 框架擴(kuò)展之Widget擴(kuò)展實(shí)現(xiàn)方法分析
- Thinkphp 框架擴(kuò)展之行為擴(kuò)展原理與實(shí)現(xiàn)方法分析
- Thinkphp 框架擴(kuò)展之標(biāo)簽庫驅(qū)動原理與用法分析
- 淺談PHP之ThinkPHP框架使用詳解
相關(guān)文章
匹配csdn用戶數(shù)據(jù)庫與官方用戶的重合度并將重疊部分的用戶篩選出來
CSDN用戶數(shù)據(jù)泄漏導(dǎo)致官方用戶的安全受到了嚴(yán)重的威脅,故希望能把兩個(gè)站的用戶數(shù)據(jù)做個(gè)對比,把其中重疊部分的用戶篩選出來,并通知相應(yīng)用戶及時(shí)修改密碼,確保風(fēng)險(xiǎn)將至最低2011-12-12
PHP的MVC模式實(shí)現(xiàn)原理分析(一相簡單的MVC框架范例)
PHP的mvc框架很多,像Yii,CodeIgniter,ThinkPHP等現(xiàn)在流行的框架,利用MVC模式進(jìn)行web頁面的開發(fā),我們可以非常方便的編寫web程序2014-04-04
laravel model模型處理之修改查詢或修改字段時(shí)的類型格式案例
今天小編就為大家分享一篇laravel model模型處理之修改查詢或修改字段時(shí)的類型格式案例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨想過來看看吧2019-10-10
全世界最小的php網(wǎng)頁木馬一枚 附PHP木馬的防范方法
php網(wǎng)頁木馬代碼,大家可以看下自己的網(wǎng)站里面是不是有這樣的代碼,注意網(wǎng)站安全用mcafee限制w3wp.exe生成php或者asp文件。并在php.ini中設(shè)置一下。2009-10-10
phpcms配置列表頁以及獲得文章發(fā)布時(shí)間
這篇文章主要介紹了phpcms配置列表頁以及獲得文章發(fā)布時(shí)間 ,需要的朋友可以參考下2017-07-07

