Thinkphp 框架擴(kuò)展之應(yīng)用模式實(shí)現(xiàn)方法分析
本文實(shí)例講述了Thinkphp 框架擴(kuò)展之應(yīng)用模式實(shí)現(xiàn)方法。分享給大家供大家參考,具體如下:
應(yīng)用模式
應(yīng)用模式是你的生活環(huán)境 開(kāi)發(fā)環(huán)境 執(zhí)行環(huán)境 ,就好比一個(gè)框架的應(yīng)用場(chǎng)景(模式),是指這個(gè)框架在哪個(gè)平臺(tái)上運(yùn)行,
thinkphp中SAE、普通、API三種模式,
- 普通是指用于普通WEB開(kāi)發(fā)和運(yùn)行方式,
- API是指用作API請(qǐng)求服務(wù)端,大多為別的客戶端進(jìn)行服務(wù),供遠(yuǎn)程調(diào)用
- SAE是指在新浪的SAE平臺(tái)上用的
不同的模式下配置都是不一樣的
應(yīng)用模式提供了對(duì)核心框架進(jìn)行改造的機(jī)會(huì),可以讓你的應(yīng)用適應(yīng)更多的環(huán)境和不同的要求。
每個(gè)應(yīng)用模式有自己的模式定義文件,用于配置當(dāng)前模式需要加載的核心文件和配置文件,以及別名定義、行為擴(kuò)展定義等等。根據(jù)模式定義文件的定義位置和入口是否需要定義模式,可以分為顯式應(yīng)用模式和隱含應(yīng)用模式。
顯式應(yīng)用模式
顯式應(yīng)用模式的模式定義文件位于ThinkPHP\Mode
目錄,如果我們要增加一個(gè)應(yīng)用模式,只需要在該目錄下面定義一個(gè)模式定義文件即可,下面是一個(gè)典型的模式定義文件(lite.php):
return array( // 配置文件 'config' => array( THINK_PATH.'Conf/convention.php', // 系統(tǒng)慣例配置 CONF_PATH.'config.php', // 應(yīng)用公共配置 ), // 別名定義 'alias' => array( 'Think\Exception' => CORE_PATH . 'Exception'.EXT, 'Think\Model' => CORE_PATH . 'Model'.EXT, 'Think\Db' => CORE_PATH . 'Db'.EXT, 'Think\Cache' => CORE_PATH . 'Cache'.EXT, 'Think\Cache\Driver\File' => CORE_PATH . 'Cache/Driver/File'.EXT, 'Think\Storage' => CORE_PATH . 'Storage'.EXT, ), // 函數(shù)和類文件 'core' => array( MODE_PATH.'Lite/functions.php', COMMON_PATH.'Common/function.php', MODE_PATH . 'Lite/App'.EXT, MODE_PATH . 'Lite/Dispatcher'.EXT, MODE_PATH . 'Lite/Controller'.EXT, MODE_PATH . 'Lite/View'.EXT, CORE_PATH . 'Behavior'.EXT, ), // 行為擴(kuò)展定義 'tags' => array( 'view_parse' => array( 'Behavior\ParseTemplate', // 模板解析 支持PHP、內(nèi)置模板引擎和第三方模板引擎 ), 'template_filter'=> array( 'Behavior\ContentReplace', // 模板輸出替換 ), ), );
我們?cè)?code>ThinkPHP/Mode/Lite目錄下面創(chuàng)建functions.php函數(shù)庫(kù)文件,以及App.class.php、Dispatcher.class.php、Controller.class.php和View.class.php,這些類都是針對(duì)我們新的應(yīng)用模式定制的核心類,但是和標(biāo)準(zhǔn)模式的命名空間是一致的,也就是說(shuō)都在Think命名空間下面。
ThinkPHP/Mode/Lite目錄用于存放該應(yīng)用模式下面的所有自定義文件。
應(yīng)用模式定義文件定義好后,我們就可以在應(yīng)用中使用該模式了,例如:
define('MODE_NAME','lite'); define('APP_PATH','./Application/'); require './ThinkPHP/ThinkPHP.php';
隱含應(yīng)用模式
隱含應(yīng)用模式的模式定義文件位于應(yīng)用的配置目錄下面 Application/Common/Conf/core.php,模式定義文件和顯式應(yīng)用模式的定義文件一樣。 使用隱含應(yīng)用模式的時(shí)候,不需要在入口文件中定義MODE_NAME,或者說(shuō)存在隱含應(yīng)用模式定義文件的時(shí)候,MODE_NAME定義無(wú)效。
注意:如果應(yīng)用中定義的應(yīng)用模式需要使用其他的存儲(chǔ)類型,需要在入口文件中定義。
define('STORAGE_TYPE','Bae');
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門(mén)教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門(mén)教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門(mén)教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對(duì)大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
- thinkphp 框架數(shù)據(jù)庫(kù)切換實(shí)現(xiàn)方法分析
- Thinkphp 框架配置操作之動(dòng)態(tài)配置、擴(kuò)展配置及批量配置實(shí)例分析
- Thinkphp 框架配置操作之配置加載與讀取配置實(shí)例分析
- Thinkphp 框架基礎(chǔ)之入口文件功能、定義與用法分析
- Thinkphp 框架基礎(chǔ)之源碼獲取、環(huán)境要求與目錄結(jié)構(gòu)分析
- Thinkphp 框架擴(kuò)展之驅(qū)動(dòng)擴(kuò)展實(shí)例分析
- Thinkphp 框架擴(kuò)展之Widget擴(kuò)展實(shí)現(xiàn)方法分析
- Thinkphp 框架擴(kuò)展之行為擴(kuò)展原理與實(shí)現(xiàn)方法分析
- Thinkphp 框架擴(kuò)展之標(biāo)簽庫(kù)驅(qū)動(dòng)原理與用法分析
- 淺談PHP之ThinkPHP框架使用詳解
相關(guān)文章
php通過(guò)字符串調(diào)用函數(shù)示例
這篇文章主要介紹了php通過(guò)字符串調(diào)用函數(shù),需要的朋友可以參考下2014-03-03thinkPHP框架實(shí)現(xiàn)類似java過(guò)濾器的簡(jiǎn)單方法示例
這篇文章主要介紹了thinkPHP框架實(shí)現(xiàn)類似java過(guò)濾器的簡(jiǎn)單方法,結(jié)合實(shí)例形式分析了thinkPHP基于繼承實(shí)現(xiàn)的登錄驗(yàn)證功能相關(guān)操作方法,需要的朋友可以參考下2018-09-09淺析PHP反序列化中過(guò)濾函數(shù)使用不當(dāng)導(dǎo)致的對(duì)象注入問(wèn)題
這篇文章主要介紹了PHP反序列化中過(guò)濾函數(shù)使用不當(dāng)導(dǎo)致的對(duì)象注入問(wèn)題,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-02-02Laravel框架使用monolog_mysql實(shí)現(xiàn)將系統(tǒng)日志信息保存到mysql數(shù)據(jù)庫(kù)的方法
這篇文章主要介紹了Laravel框架使用monolog_mysql實(shí)現(xiàn)將系統(tǒng)日志信息保存到mysql數(shù)據(jù)庫(kù)的方法,簡(jiǎn)單介紹了monolog_mysql的安裝、配置、數(shù)據(jù)庫(kù)遷移、日志生成、mysql寫(xiě)入等相關(guān)操作技巧,需要的朋友可以參考下2018-08-08PHP圖片等比縮放類SimpleImage使用方法和使用實(shí)例分享
這篇文章主要介紹了PHP圖片等比縮放類SimpleImage使用方法和使用實(shí)例分享,需要的朋友可以參考下2014-04-04php 問(wèn)卷調(diào)查結(jié)果統(tǒng)計(jì)
一個(gè)新產(chǎn)品投入市場(chǎng),要先做問(wèn)卷調(diào)查,考察這個(gè)產(chǎn)品在市場(chǎng)的需求量,本篇文章主要跟大家介紹使用php問(wèn)卷調(diào)查結(jié)果統(tǒng)計(jì),感興趣的朋友一起學(xué)習(xí)吧2015-10-10