zoukankan      html  css  js  c++  java
  • thinkphp 应用模式

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

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

    显式应用模式大理石平台检定规程

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

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

    我们在ThinkPHP/Mode/Lite目录下面创建functions.php函数库文件,以及App.class.phpDispatcher.class.phpController.class.phpView.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定义无效。

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

    1. define('STORAGE_TYPE','Bae');
     
  • 相关阅读:
    浏览器
    背景图片设置
    用CSS画平行四边形
    git常用操作
    函数Function
    Object类型的创建和访问
    执行环境及作用域
    传值和传引用
    String类型
    HTML< legend >标签
  • 原文地址:https://www.cnblogs.com/furuihua/p/11843005.html
Copyright © 2011-2022 走看看