[ThinkPHP] 1、Config.php 配置项分析

雪影工作室版权所有,转载请注明【http://blog.csdn.net/lina791211】

一、配置格式

  ThinkPHP3.1.2框架中所有配置文件的定义格式均采用返回PHP数组的方式,格式为:
//项目配置文件
return array(
    'DEFAULT_MODULE'     => 'Index', //默认模块
    'URL_MODEL'          => '2', //URL模式
    'SESSION_AUTO_START' => true, //是否开启session
    //更多配置参数
    //...
);
  配置参数不区分大小写(因为无论大小写定义都会转换成小写), 建议保持大写定义配置参数的规范。

//项目配置文件
return array(
    'DEFAULT_MODULE'     => 'Index', //默认模块
    'URL_MODEL'          => '2', //URL模式
    'SESSION_AUTO_START' => true, //是否开启session
    'USER_CONFIG'        => array(
        'USER_AUTH' => true,
        'USER_TYPE' => 2,
    ),
    //更多配置参数
    //...
);

二、配置分类

  1.   ThinkPHP配置分为:惯例配置项目配置调试配置分组配置四类方式。
  2.   可以在任意的PHP文件中使用C方法(可以使用Config的首写字母记忆该方法)读取动态更新配置项
  3.   项目配置文件在部署模式的时候会纳入编译缓存,也就是说编译后再修改项目配置文件就不会立刻生效,需要删除编译缓存后才能生效。
  4.   可以使用扩展配置的方法自动加载不同分类的配置信息
'LOAD_EXT_CONFIG' => 'user,db', // 加载扩展配置文件。多个文件用逗号分隔

项目设置了加载扩展配置文件user.php 和db.php
分别用于用户配置和数据库配置,
那么会自动加载项目配置目录下面的配置文件Conf/user.php和Conf/db.php

三、系统保留

  这种方式可以避免大项目情况中的参数冲突问题。下面的一些配置文件已经被系统使用,请不要作为自定义的扩展配置重新定义:
文件名 说明
config.php 项目配置文件
tags.php 项目行为配置文件
alias.php 项目别名定义文件
debug.php 项目调试模式配置文件(以及项目设置的APP_STATUS对应的配置文件)
core.php 项目追加的核心编译列表文件(不会覆盖核心编译列表)

四、常见参数

惯例配置

配置名 说明 默认值
应用设置
APP_STATUS 应用调试模式状态 调试模式开启后有效 默认为debug
可扩展 并自动加载对应的配置文件
debug
APP_FILE_CASE 是否检查文件的大小写 对Windows平台有效 false
APP_AUTOLOAD_PATH 自动加载机制的自动搜索路径,注意搜索顺序
APP_TAGS_ON 系统标签扩展开关 true
APP_SUB_DOMAIN_DEPLOY 是否开启子域名部署 false
APP_SUB_DOMAIN_RULES 子域名部署规则 array()
APP_SUB_DOMAIN_DENY 子域名禁用列表 array()
APP_GROUP_LIST 项目分组设定,多个组之间用逗号分隔
ACTION_SUFFIX 操作方法后缀
默认值设置
DEFAULT_APP 默认项目名称,@表示当前项目 @
DEFAULT_LANG 默认语言 zh-cn
DEFAULT_THEME 默认模板主题名称
DEFAULT_GROUP 默认分组名 Home
DEFAULT_MODULE 默认模块名 Index
DEFAULT_ACTION 默认操作名 index
DEFAULT_CHARSET 默认输出编码 utf-8
DEFAULT_TIMEZONE 默认时区 PRC
DEFAULT_AJAX_RETURN 默认AJAX 数据返回格式,可选JSON XML JSON
DEFAULT_FILTER 默认参数过滤方法 htmlspecialchars
Cookie设置
COOKIE_EXPIRE Coodie有效期(秒) 3600
COOKIE_DOMAIN Cookie有效域名
COOKIE_PATH Cookie路径 /
COOKIE_PREFIX Cookie前缀 避免冲突
数据库配置
DB_TYPE 数据库类型 mysql
DB_DSN 数据库连接信息DSN串
DB_HOST 数据库服务器地址 localhost
DB_NAME 数据库名称
DB_USER 数据库用户名 root
DB_PWD 数据库用户密码
DB_PORT 数据库端口
DB_FIELDS_CACHE 是否开启数据表字段缓存 true
DB_FIELDTYPE_CHECK 是否开启字段类型检查 false
DB_CHARSET 数据库编码 utf8
DB_DEPLOY_TYPE 数据库部署方式 0 集中式 1 分布式 0
DB_RW_SEPARATE 数据库是否需要读写分离 分布式部署下有效 false
DB_MASTER_NUM 设置读写分离后 主服务器数量 1
DB_SLAVE_NO 设置读写分离后 指定从服务器序号(3.1新增)
DB_SQL_BUILD_CACHE 数据库查询的SQL创建缓存 false
DB_SQL_BUILD_QUEUE SQL缓存队列的缓存方式 file
DB_SQL_BUILD_LENGTH SQL缓存的队列长度 20
DB_SQL_LOG 是否开启SQL日志记录(3.1新增) false
数据缓存设置
DATA_CACHE_TIME 数据缓存有效期 0表示永久缓存 0
DATA_CACHE_COMPRESS 数据缓存是否压缩缓存 false
DATA_CACHE_CHECK 数据缓存是否校验缓存 false
DATA_CACHE_TYPE 数据缓存类型 File
DATA_CACHE_PATH 缓存路径设置 (仅对File方式缓存有效) TEMP_PATH
DATA_CACHE_SUBDIR 使用子目录缓存(仅对File方式缓存有效) false
DATA_PATH_LEVEL 子目录缓存级别(仅对File方式缓存有效) 1
错误设置
ERROR_MESSAGE 错误显示信息,部署模式有效
ERROR_PAGE 错误定向页面,部署模式有效
SHOW_ERROR_MSG 是否显示错误信息 False
日志设置
LOG_RECORD 是否记录日志信息 false
LOG_TYPE 默认日志记录类型 0 系统 1 邮件 3 文件 4 SAPI 3
LOG_DEST 日志记录目标
LOG_EXTRA 日志记录额外信息
LOG_LEVEL 允许记录的日志级别 EMERG,ALERT,CRIT,ERR
LOG_FILE_SIZE 日志文件大小限制(字节 文件方式有效) 2097152
LOG_EXCEPTION_RECORD 是否记录异常信息日志 false
SESSION设置
SESSION_AUTO_START 是否自动开启Session true
SESSION_OPTIONS session 配置数组 array()
SESSION_TYPE session hander类型
SESSION_PREFIX session 前缀
VAR_SESSION_ID sessionID的提交变量 session_id
模板引擎设置
TMPL_CONTENT_TYPE 默认模板输出类型 text/html
TMPL_ACTION_ERROR 默认错误跳转对应的模板文件 系统模板目录下的dispatch_jump.tpl
TMPL_ACTION_SUCCESS 默认成功跳转对应的模板文件 同上
TMPL_EXCEPTION_FILE 异常页面的模板文件 系统模板目录下的think_exception.tpl
TMPL_DETECT_THEME 自动侦测模板主题 false
TMPL_TEMPLATE_SUFFIX 默认模板文件后缀 .html
TMPL_FILE_DEPR 模板文件模块与操作之间的分割符,只对项目分组部署有效 /
URL设置
URL_CASE_INSENSITIVE URL是否不区分大小写 false
URL_MODEL URL访问模式支持 0 (普通模式);
1 (PATHINFO 模式);
2 (REWRITE 模式);
3 (兼容模式)
1
URL_PATHINFO_DEPR PATHINFO模式下的参数分割符 /
URL_PATHINFO_FETCH 用于兼容判断PATH_INFO 参数的SERVER替代变量列表 ORIG_PATH_INFO
REDIRECT_PATH_INFO
REDIRECT_URL
URL_HTML_SUFFIX URL伪静态后缀设置
URL_404_REDIRECT 404跳转页面 部署模式有效(3.1新增)
URL_PARAMS_BIND URL变量绑定到Action方法参数(3.1新增) true
系统变量名称设置
VAR_GROUP 默认分组获取变量 g
VAR_MODULE 默认模块获取变量 m
VAR_ACTION 默认操作获取变量 a
VAR_AJAX_SUBMIT 默认的AJAX提交变量 ajax
VAR_TEMPLATE 默认模板主题切换变量 t
VAR_PATHINFO 兼容模式获取变量 s
VAR_URL_PARAMS PATHINFOURL参数变量 _URL_
VAR_FILTERS 全局系统变量的默认过滤方法 多个用逗号分割(3.1新增)
OUTPUT_ENCODE 是否开启页面压缩输出(3.1新增) true

行为配置

这里仅仅列出了系统内置的行为扩展的配置参数
配置名 说明 默认值
CheckRoute行为配置
URL_ROUTER_ON 是否开启URL路由 false
URL_ROUTE_RULES 默认路由规则 array()
ContentReplace行为配置
TMPL_PARSE_STRING 模板替换规则 array()
ParseTemplate行为配置
TMPL_ENGINE_TYPE 默认模板引擎 Think
TMPL_CACHFILE_SUFFIX 默认模板缓存后缀 .php
TMPL_DENY_FUNC_LIST 模板引擎禁用函数 echo,exit
TMPL_DENY_PHP 是否禁用PHP原生代码 false
TMPL_L_DELIM 模板引擎普通标签开始标记 {
TMPL_R_DELIM 模板引擎普通标签结束标记 }
TAGLIB_BEGIN 标签库标签开始标记
TAGLIB_END 标签库标签结束标记
TAGLIB_LOAD 是否使用内置标签库之外的其它标签库,默认自动检测 true
TAGLIB_BUILD_IN 内置标签库名称 cx
TAGLIB_PRE_LOAD 需要预先加载的标签库
TMPL_VAR_IDENTIFY 模板变量识别。留空自动判断 array
TMPL_STRIP_SPACE 是否去除模板文件里面的html空格与换行 true
TMPL_CACHE_ON 是否开启模板编译缓存 true
TMPL_CACHE_TIME 模板缓存有效期 0为永久 0
LAYOUT_ON 是否启用布局 false
LAYOUT_NAME 当前布局名称 layout
TMPL_LAYOUT_ITEM 布局模板的内容替换标识 {__CONTENT__}
ReadHtmlCache行为配置
HTML_CACHE_ON 是否开启静态缓存 false
HTML_CACHE_RULES 静态缓存规则 array()
HTML_CACHE_TIME 静态缓存有效期(秒) 60
HTML_FILE_SUFFIX 静态缓存后缀 .html
ShowPageTrace行为配置
SHOW_PAGE_TRACE 显示页面Trace信息 false
ShowRuntime行为配置
SHOW_RUN_TIME 是否显示运行时间 false
SHOW_ADV_TIME 是否显示详细的运行时间 false
SHOW_DB_TIMES 是否显示数据库查询和写入次数 false
SHOW_CACHE_TIMES 是否显示缓存操作次数 false
SHOW_USE_MEM 是否显示内存开销 false
SHOW_LOAD_FILE 是否显示加载文件数 false
SHOW_FUN_TIMES 是否显示函数调用次数 false
TokenBuild行为配置
TOKEN_ON 是否开启令牌验证 true
TOKEN_NAME 令牌验证的表单隐藏字段名称 __hash__
TOKEN_TYPE 令牌验证哈希规则 md5
TOKEN_RESET 令牌错误后是否重置 true



你可能感兴趣的:(配置,thinkphp,config.php)