欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Thinkphp 框架擴展之應用模式實現方法分析

 更新時間:2020年04月27日 09:15:11   作者:人生如初見_張默  
這篇文章主要介紹了Thinkphp 框架擴展之應用模式,結合實例形式分析了Thinkphp 擴展應用模式的具體原理、實現方法及相關注意事項,需要的朋友可以參考下

本文實例講述了Thinkphp 框架擴展之應用模式實現方法。分享給大家供大家參考,具體如下:

應用模式

應用模式是你的生活環(huán)境 開發(fā)環(huán)境 執(zhí)行環(huán)境 ,就好比一個框架的應用場景(模式),是指這個框架在哪個平臺上運行,

thinkphp中SAE、普通、API三種模式,

  • 普通是指用于普通WEB開發(fā)和運行方式,
  • API是指用作API請求服務端,大多為別的客戶端進行服務,供遠程調用
  • SAE是指在新浪的SAE平臺上用的

不同的模式下配置都是不一樣的

應用模式提供了對核心框架進行改造的機會,可以讓你的應用適應更多的環(huán)境和不同的要求。

每個應用模式有自己的模式定義文件,用于配置當前模式需要加載的核心文件和配置文件,以及別名定義、行為擴展定義等等。根據模式定義文件的定義位置和入口是否需要定義模式,可以分為顯式應用模式和隱含應用模式。

顯式應用模式

顯式應用模式的模式定義文件位于ThinkPHP\Mode目錄,如果我們要增加一個應用模式,只需要在該目錄下面定義一個模式定義文件即可,下面是一個典型的模式定義文件(lite.php):

return array(
  // 配置文件
  'config'  => array(
    THINK_PATH.'Conf/convention.php',  // 系統(tǒng)慣例配置
    CONF_PATH.'config.php',   // 應用公共配置
  ),
 
  // 別名定義
  '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,
  ),
 
  // 函數和類文件
  '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,
  ),
  // 行為擴展定義
  'tags' => array(
    'view_parse'  => array(
      'Behavior\ParseTemplate', // 模板解析 支持PHP、內置模板引擎和第三方模板引擎
    ),
    'template_filter'=> array(
      'Behavior\ContentReplace', // 模板輸出替換
    ),
  ),
);

我們在ThinkPHP/Mode/Lite目錄下面創(chuàng)建functions.php函數庫文件,以及App.class.phpDispatcher.class.php、Controller.class.phpView.class.php,這些類都是針對我們新的應用模式定制的核心類,但是和標準模式的命名空間是一致的,也就是說都在Think命名空間下面。

ThinkPHP/Mode/Lite目錄用于存放該應用模式下面的所有自定義文件。

應用模式定義文件定義好后,我們就可以在應用中使用該模式了,例如:

define('MODE_NAME','lite');
define('APP_PATH','./Application/');
require './ThinkPHP/ThinkPHP.php';

隱含應用模式

隱含應用模式的模式定義文件位于應用的配置目錄下面 Application/Common/Conf/core.php,模式定義文件和顯式應用模式的定義文件一樣。 使用隱含應用模式的時候,不需要在入口文件中定義MODE_NAME,或者說存在隱含應用模式定義文件的時候,MODE_NAME定義無效。

注意:如果應用中定義的應用模式需要使用其他的存儲類型,需要在入口文件中定義。

define('STORAGE_TYPE','Bae');

更多關于thinkPHP相關內容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結》、《ThinkPHP常用方法總結》、《codeigniter入門教程》、《CI(CodeIgniter)框架進階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術總結》。

希望本文所述對大家基于ThinkPHP框架的PHP程序設計有所幫助。

相關文章

  • php通過字符串調用函數示例

    php通過字符串調用函數示例

    這篇文章主要介紹了php通過字符串調用函數,需要的朋友可以參考下
    2014-03-03
  • thinkPHP框架實現類似java過濾器的簡單方法示例

    thinkPHP框架實現類似java過濾器的簡單方法示例

    這篇文章主要介紹了thinkPHP框架實現類似java過濾器的簡單方法,結合實例形式分析了thinkPHP基于繼承實現的登錄驗證功能相關操作方法,需要的朋友可以參考下
    2018-09-09
  • 淺析PHP反序列化中過濾函數使用不當導致的對象注入問題

    淺析PHP反序列化中過濾函數使用不當導致的對象注入問題

    這篇文章主要介紹了PHP反序列化中過濾函數使用不當導致的對象注入問題,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • CI框架裝載器Loader.php源碼分析

    CI框架裝載器Loader.php源碼分析

    前面我們分析了CI框架的session類和安全類文件,今天我們來分析下CI框架的裝載器Loader.php文件的源碼
    2014-11-11
  • Laravel框架使用monolog_mysql實現將系統(tǒng)日志信息保存到mysql數據庫的方法

    Laravel框架使用monolog_mysql實現將系統(tǒng)日志信息保存到mysql數據庫的方法

    這篇文章主要介紹了Laravel框架使用monolog_mysql實現將系統(tǒng)日志信息保存到mysql數據庫的方法,簡單介紹了monolog_mysql的安裝、配置、數據庫遷移、日志生成、mysql寫入等相關操作技巧,需要的朋友可以參考下
    2018-08-08
  • PHP curl使用實例

    PHP curl使用實例

    這篇文章主要介紹了PHP curl使用實例,本文直接給出一個實例,演示直接輸出到瀏覽器和不直接輸出到瀏覽器的不同寫法,需要的朋友可以參考下
    2015-07-07
  • PHP圖片等比縮放類SimpleImage使用方法和使用實例分享

    PHP圖片等比縮放類SimpleImage使用方法和使用實例分享

    這篇文章主要介紹了PHP圖片等比縮放類SimpleImage使用方法和使用實例分享,需要的朋友可以參考下
    2014-04-04
  • PHP使用Nginx實現反向代理

    PHP使用Nginx實現反向代理

    這篇文章主要為大家詳細介紹了PHP使用Nginx實現反向代理的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • php 問卷調查結果統(tǒng)計

    php 問卷調查結果統(tǒng)計

    一個新產品投入市場,要先做問卷調查,考察這個產品在市場的需求量,本篇文章主要跟大家介紹使用php問卷調查結果統(tǒng)計,感興趣的朋友一起學習吧
    2015-10-10
  • PHP小教程之實現雙向鏈表

    PHP小教程之實現雙向鏈表

    雙向鏈表也叫雙鏈表,是鏈表的一種,它的每個數據結點中都有兩個指針,分別指向直接后繼和直接前驅。所以,從雙向鏈表中的任意一個結點開始,都可以很方便地訪問它的前驅結點和后繼結點。一般我們都構造雙向循環(huán)鏈表。
    2014-06-06

最新評論