热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ThinkPHP惯例配置文件详解

这篇文章主要介绍了ThinkPHP惯例配置文件,对于进一步了解ThinkPHP各个属性配置有很大帮助,需要的朋友可以参考下

这篇文章主要介绍了ThinkPHP惯例配置文件,对于进一步了解ThinkPHP各个属性配置有很大帮助,需要的朋友可以参考下

ThinkPHP的系统内置有一个惯例配置文件(位于系统目录下面的Conf\convention.php),按照大多数的使用对常用参数进行了默认配置。本文对惯例配置文件作出注释详解如下,供大家参考:

<&#63;php /** +------------------------------------------------------------------------------ * ThinkPHP惯例配置文件 * 该文件请不要修改,如果要覆盖惯例配置的值,,可在项目配置文件中设定和惯例不符的配置项 * 配置名称大小写任意,系统会统一转换成小写 * 所有配置参数都可以在生效前动态改变 +------------------------------------------------------------------------------ * @category Think * @package Common * @version $Id$ +------------------------------------------------------------------------------ */ if (!defined('THINK_PATH')) exit(); return array( /* 项目设定 */ 'APP_DEBUG' => false, // 是否开启调试模式 'APP_DOMAIN_DEPLOY' => false, // 是否使用独立域名部署项目 'APP_PLUGIN_ON' => false, // 是否开启插件机制 'APP_FILE_CASE' => false, // 是否检查文件的大小写 对Windows平台有效 'APP_GROUP_DEPR' => '.', // 模块分组之间的分割符 'APP_GROUP_LIST' => '', // 项目分组设定,多个组之间用逗号分隔,例如'Home,Admin' 'APP_AUTOLOAD_REG' => false, // 是否开启SPL_AUTOLOAD_REGISTER 'APP_AUTOLOAD_PATH' => 'Think.Util.',// __autoLoad 机制额外检测路径设置,注意搜索顺序 'APP_CONFIG_LIST' => array('taglibs','routes','tags','htmls','modules','actions'),// 项目额外需要加载的配置列表,默认包括:taglibs(标签库定义),routes(路由定义),tags(标签定义),(htmls)静态缓存定义, modules(扩展模块),actions(扩展操作) /* COOKIE设置 */ 'COOKIE_EXPIRE' => 3600, // Coodie有效期 'COOKIE_DOMAIN' => '', // COOKIE有效域名 'COOKIE_PATH' => '/', // COOKIE路径 'COOKIE_PREFIX' => '', // COOKIE前缀 避免冲突 /* 默认设定 */ 'DEFAULT_APP' => '@', // 默认项目名称,@表示当前项目 'DEFAULT_GROUP' => 'Home', // 默认分组 'DEFAULT_MODULE' => 'Index', // 默认模块名称 'DEFAULT_ACTION' => 'index', // 默认操作名称 'DEFAULT_CHARSET' => 'utf-8', // 默认输出编码 'DEFAULT_TIMEZONE' => 'PRC', // 默认时区 'DEFAULT_AJAX_RETURN' => 'JSON', // 默认AJAX 数据返回格式,可选JSON XML ... 'DEFAULT_THEME' => 'default', // 默认模板主题名称 'DEFAULT_LANG' => 'zh-cn', // 默认语言 /* 数据库设置 */ 'DB_TYPE' => 'mysql', // 数据库类型 'DB_HOST' => 'localhost', // 服务器地址 'DB_NAME' => '', // 数据库名 'DB_USER' => 'root', // 用户名 'DB_PWD' => '', // 密码 'DB_PORT' => 3306, // 端口 'DB_PREFIX' => 'think_', // 数据库表前缀 'DB_SUFFIX' => '', // 数据库表后缀 'DB_FIELDTYPE_CHECK' => false, // 是否进行字段类型检查 'DB_FIELDS_CACHE' => true, // 启用字段缓存 'DB_CHARSET' => 'utf8', // 数据库编码默认采用utf8 'DB_DEPLOY_TYPE' => 0, // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器) 'DB_RW_SEPARATE' => false, // 数据库读写是否分离 主从式有效 /* 数据缓存设置 */ 'DATA_CACHE_TIME' => -1, // 数据缓存有效期 'DATA_CACHE_COMPRESS' => false, // 数据缓存是否压缩缓存 'DATA_CACHE_CHECK' => false, // 数据缓存是否校验缓存 'DATA_CACHE_TYPE' => 'File', // 数据缓存类型,支持:File|Db|Apc|Memcache|Shmop|Sqlite| Xcache|Apachenote|Eaccelerator 'DATA_CACHE_PATH' => TEMP_PATH,// 缓存路径设置 (仅对File方式缓存有效) 'DATA_CACHE_SUBDIR' => false, // 使用子目录缓存 (自动根据缓存标识的哈希创建子目录) 'DATA_PATH_LEVEL' => 1, // 子目录缓存级别 /* 错误设置 */ 'ERROR_MESSAGE' => '您浏览的页面暂时发生了错误!请稍后再试~',//错误显示信息,非调试模式有效 'ERROR_PAGE' => '', // 错误定向页面 /* 静态缓存设置 */ 'HTML_CACHE_ON' => false, // 默认关闭静态缓存 'HTML_CACHE_TIME' => 60, // 静态缓存有效期 'HTML_READ_TYPE' => 0, // 静态缓存读取方式 0 readfile 1 redirect 'HTML_FILE_SUFFIX' => '.shtml',// 默认静态文件后缀 /* 语言设置 */ 'LANG_SWITCH_ON' => false, // 默认关闭多语言包功能 'LANG_AUTO_DETECT' => true, // 自动侦测语言 开启多语言功能后有效 /* 日志设置 */ 'LOG_RECORD' => false, // 默认不记录日志 'LOG_FILE_SIZE' => 2097152, // 日志文件大小限制 'LOG_RECORD_LEVEL' => array('EMERG','ALERT','CRIT','ERR'),// 允许记录的日志级别 /* 分页设置 */ 'PAGE_ROLLPAGE' => 5, // 分页显示页数 'PAGE_LISTROWS' => 20, // 分页每页显示记录数 /* SESSION设置 */ 'SESSION_AUTO_START' => true, // 是否自动开启Session // 内置SESSION类可用参数 //'SESSION_NAME' => '', // Session名称 //'SESSION_PATH' => '', // Session保存路径 //'SESSION_CALLBACK' => '', // Session 对象反序列化时候的回调函数 /* 运行时间设置 */ 'SHOW_RUN_TIME' => false, // 运行时间显示 'SHOW_ADV_TIME' => false, // 显示详细的运行时间 'SHOW_DB_TIMES' => false, // 显示数据库查询和写入次数 'SHOW_CACHE_TIMES' => false, // 显示缓存操作次数 'SHOW_USE_MEM' => false, // 显示内存开销 'SHOW_PAGE_TRACE' => false, // 显示页面Trace信息 由Trace文件定义和Action操作赋值 'SHOW_ERROR_MSG' => true, // 显示错误信息 /* 模板引擎设置 */ 'TMPL_ENGINE_TYPE' => 'Think', // 默认模板引擎 以下设置仅对使用Think模板引擎有效 'TMPL_DETECT_THEME' => false, // 自动侦测模板主题 'TMPL_TEMPLATE_SUFFIX' => '.html', // 默认模板文件后缀 'TMPL_CACHFILE_SUFFIX' => '.php', // 默认模板缓存后缀 'TMPL_DENY_FUNC_LIST' => 'echo,exit', // 模板引擎禁用函数 'TMPL_PARSE_STRING' => '', // 模板引擎要自动替换的字符串,必须是数组形式。 'TMPL_L_DELIM' => '{', // 模板引擎普通标签开始标记 'TMPL_R_DELIM' => '}', // 模板引擎普通标签结束标记 'TMPL_VAR_IDENTIFY' => 'array', // 模板变量识别。留空自动判断,参数为'obj'则表示对象 'TMPL_STRIP_SPACE' => false, // 是否去除模板文件里面的html空格与换行 'TMPL_CACHE_ON' => true, // 是否开启模板编译缓存,设为false则每次都会重新编译 'TMPL_CACHE_TIME' => -1, // 模板缓存有效期 -1 为永久,(以数字为值,单位:秒) 'TMPL_ACTION_ERROR' => 'Public:success', // 默认错误跳转对应的模板文件 'TMPL_ACTION_SUCCESS' => 'Public:success', // 默认成功跳转对应的模板文件 'TMPL_TRACE_FILE' => THINK_PATH.'/Tpl/PageTrace.tpl.php', // 页面Trace的模板文件 'TMPL_EXCEPTION_FILE' => THINK_PATH.'/Tpl/ThinkException.tpl.php',// 异常页面的模板文件 'TMPL_FILE_DEPR'=>'/', //模板文件MODULE_NAME与ACTION_NAME之间的分割符,只对项目分组部署有效 // Think模板引擎标签库相关设定 'TAGLIB_BEGIN' => '<', // 标签库标签开始标记 'TAGLIB_END' => '>', // 标签库标签结束标记 'TAGLIB_LOAD' => true, // 是否使用内置标签库之外的其它标签库,默认自动检测 'TAGLIB_BUILD_IN' => 'cx', // 内置标签库名称(标签使用不必指定标签库名称),以逗号分隔 'TAGLIB_PRE_LOAD' => '', // 需要额外加载的标签库(须指定标签库名称),多个以逗号分隔 'TAG_NESTED_LEVEL' => 3, // 标签嵌套级别 'TAG_EXTEND_PARSE' => '', // 指定对普通标签进行扩展定义和解析的函数名称。 /* 表单令牌验证 */ 'TOKEN_ON' => true, // 开启令牌验证 'TOKEN_NAME' => '__hash__', // 令牌验证的表单隐藏字段名称 'TOKEN_TYPE' => 'md5', // 令牌验证哈希规则 /* URL设置 */ 'URL_CASE_INSENSITIVE' => false, // URL地址是否不区分大小写 'URL_ROUTER_ON' => false, // 是否开启URL路由 'URL_DISPATCH_ON' => true, // 是否启用Dispatcher 'URL_MODEL' => 1, // URL访问模式,可选参数0、1、2、3,代表以下四种模式: // 0 (普通模式); 1 (PATHINFO 模式); 2 (REWRITE 模式); 3 (兼容模式) 当URL_DISPATCH_ON开启后有效; 默认为PATHINFO 模式,提供最好的用户体验和SEO支持 'URL_PATHINFO_MODEL' => 2, // PATHINFO 模式,使用数字1、2、3代表以下三种模式: // 1 普通模式(参数没有顺序,例如/m/module/a/action/id/1); // 2 智能模式(系统默认使用的模式,可自动识别模块和操作/module/action/id/1/ 或者 /module,action,id,1/...); // 3 兼容模式(通过一个GET变量将PATHINFO传递给dispather,默认为s index.php&#63;s=/module/action/id/1) 'URL_PATHINFO_DEPR' => '/', // PATHINFO模式下,各参数之间的分割符号 'URL_HTML_SUFFIX' => '', // URL伪静态后缀设置 /* 系统变量名称设置 */ 'VAR_GROUP' => 'g', // 默认分组获取变量 'VAR_MODULE' => 'm', // 默认模块获取变量 'VAR_ACTION' => 'a', // 默认操作获取变量 'VAR_ROUTER' => 'r', // 默认路由获取变量 'VAR_PAGE' => 'p', // 默认分页跳转变量 'VAR_TEMPLATE' => 't', // 默认模板切换变量 'VAR_LANGUAGE' => 'l', // 默认语言切换变量 'VAR_AJAX_SUBMIT' => 'ajax', // 默认的AJAX提交变量 'VAR_PATHINFO' => 's', // PATHINFO 兼容模式获取变量例如 &#63;s=/module/action/id/1 后面的参数取决于URL_PATHINFO_MODEL 和 URL_PATHINFO_DEPR );

此外,还需注意,由于新版系统架构的改变,部分惯例配置的参数已经分离出来纳入了行为扩展的属性参数,读者可查阅手册进一步了解。

推荐阅读
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了关于apache、phpmyadmin、mysql、php、emacs、path等知识点,以及如何搭建php环境。文章提供了详细的安装步骤和所需软件列表,希望能帮助读者解决与LAMP相关的技术问题。 ... [详细]
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 本文由编程笔记小编整理,介绍了PHP中的MySQL函数库及其常用函数,包括mysql_connect、mysql_error、mysql_select_db、mysql_query、mysql_affected_row、mysql_close等。希望对读者有一定的参考价值。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
author-avatar
无心睡眠tuo_295
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有