当前位置:首页 > CMS教程 > Thinkphp > 列表

Thinkphp 框架扩展之应用模式实现方法分析

发布:smiling 来源: PHP粉丝网  添加日期:2022-03-03 09:26:07 浏览: 评论:0 

这篇文章主要介绍了Thinkphp 框架扩展之应用模式,结合实例形式分析了Thinkphp 扩展应用模式的具体原理、实现方法及相关注意事项,需要的朋友可以参考下。

本文实例讲述了Thinkphp 框架扩展之应用模式实现方法,分享给大家供大家参考,具体如下:

应用模式

应用模式是你的生活环境 开发环境 执行环境 ,就好比一个框架的应用场景(模式),是指这个框架在哪个平台上运行,

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

普通是指用于普通WEB开发和运行方式,

API是指用作API请求服务端,大多为别的客户端进行服务,供远程调用

SAE是指在新浪的SAE平台上用的

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

应用模式提供了对核心框架进行改造的机会,可以让你的应用适应更多的环境和不同的要求。

每个应用模式有自己的模式定义文件,用于配置当前模式需要加载的核心文件和配置文件,以及别名定义、行为扩展定义等等。根据模式定义文件的定义位置和入口是否需要定义模式,可以分为显式应用模式和隐含应用模式。

显式应用模式

显式应用模式的模式定义文件位于ThinkPHP\Mode目录,如果我们要增加一个应用模式,只需要在该目录下面定义一个模式定义文件即可,下面是一个典型的模式定义文件(lite.php):

  1. return array
  2.   // 配置文件 
  3.   'config'  => array
  4.     THINK_PATH.'Conf/convention.php',  // 系统惯例配置 
  5.     CONF_PATH.'config.php',   // 应用公共配置 
  6.   ), 
  7.    
  8.   // 别名定义 
  9.   'alias'   => array
  10.     'Think\Exception'     => CORE_PATH . 'Exception'.EXT, 
  11.     'Think\Model'       => CORE_PATH . 'Model'.EXT, 
  12.     'Think\Db'        => CORE_PATH . 'Db'.EXT, 
  13.     'Think\Cache'       => CORE_PATH . 'Cache'.EXT, 
  14.     'Think\Cache\Driver\File' => CORE_PATH . 'Cache/Driver/File'.EXT, 
  15.     'Think\Storage'      => CORE_PATH . 'Storage'.EXT, 
  16.   ), 
  17.    
  18.   // 函数和类文件 
  19.   'core'   => array
  20.     MODE_PATH.'Lite/functions.php'
  21.     COMMON_PATH.'Common/function.php'
  22.     MODE_PATH . 'Lite/App'.EXT, 
  23.     MODE_PATH . 'Lite/Dispatcher'.EXT, 
  24.     MODE_PATH . 'Lite/Controller'.EXT, 
  25.     MODE_PATH . 'Lite/View'.EXT, 
  26.     CORE_PATH . 'Behavior'.EXT, 
  27.   ), 
  28.   // 行为扩展定义 
  29.   'tags' => array
  30.     'view_parse'  => array
  31.       'Behavior\ParseTemplate'// 模板解析 支持PHP、内置模板引擎和第三方模板引擎 
  32.     ), 
  33.     'template_filter'=> array
  34.       'Behavior\ContentReplace'// 模板输出替换 
  35.     ), 
  36.   ), 
  37. ); 

我们在ThinkPHP/Mode/Lite目录下面创建functions.php函数库文件,以及App.class.php、Dispatcher.class.php、Controller.class.php和View.class.php,这些类都是针对我们新的应用模式定制的核心类,但是和标准模式的命名空间是一致的,也就是说都在Think命名空间下面。

ThinkPHP/Mode/Lite目录用于存放该应用模式下面的所有自定义文件。

应用模式定义文件定义好后,我们就可以在应用中使用该模式了,例如:

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

隐含应用模式

隐含应用模式的模式定义文件位于应用的配置目录下面 Application/Common/Conf/core.php,模式定义文件和显式应用模式的定义文件一样。 使用隐含应用模式的时候,不需要在入口文件中定义MODE_NAME,或者说存在隐含应用模式定义文件的时候,MODE_NAME定义无效。

注意:如果应用中定义的应用模式需要使用其他的存储类型,需要在入口文件中定义。

define('STORAGE_TYPE','Bae');

Tags: Thinkphp扩展 Thinkphp应用模式

分享到: