ThinkPHP项目分组配置方法分析


Posted in PHP onMarch 23, 2016

本文实例讲述了ThinkPHP项目分组配置方法。分享给大家供大家参考,具体如下:

项目分组概述

项目分组是 ThinkPHP 一个重要机制,项目分组功能可以把以往的多项目合并到一个项目中去,对于公共的文件可以重用,但每个分组又可以有自己独立的配置文件、公共文件、语言包等。

以一个普通的网站为例,如果不采用项目分组,那么通常是将网站前台(提供给用户浏览部分)作为一个项目。而网站的后台管理部分,可能有独立的配置文件,CSS文件及模板等,因此作为另一个项目来管理。但实际上这两个项目都是网站的内容,他们之间可以共享一些内容如数据库配置文件甚至一些模型类和跨项目操作等。

项目分组就很好的解决了同一个系统下各项目之间的共性与个性问题。

项目分组配置

在系统配置文件(Config/config.php)里面进行简单的项目分组配置即可开启项目分组。

与项目分组模式有关的配置有五个:

配置选项 说明 例子或建议
APP_GROUP_LIST 项目分组所有名称列表,若不设置则表示不启用项目分组模式 'APP_GROUP_LIST'=>'Home,Admin,User,Blog',
DEFAULT_GROUP 默认的项目分组名称,系统默认是 Home 'DEFAULT_GROUP' =>'Home',
APP_GROUP_DEPR 项目分组之间的分割符,默认是 . (点),用于 A函数 D函数 和 路由配置中的分隔 建议默认
TMPL_FILE_DEPR 模板文件中模块与操作之间的分割符,默认是 / ,只对项目分组部署有效 建议默认,可使用 U 方法自动生成 URL
VAR_GROUP 获取项目分组名称的变量,默认是 g index.php?g=Admin&m=Index&a=edit,建议默认

当 TMPL_FILE_DEPR 配置为 _ 时,以 Admin 分组 Index 模块 add 操作来说,其对应的模板文件由原来的:

Tpl/default/Admin/Index/add.html

变更为:

Tpl/default/Admin/Index_add.html

通过这个配置,使模板目录结构减少了一层目录。

提示:TMPL_FILE_DEPR 同时也是语言文件中分组语言定义与语言文件之间的分隔符。

以上配置选项中,要启用分组,APP_GROUP_LIST 必须设置,其他选项则根据实际情况加以配置。

项目分组个性配置

如果要为分组的项目添加独自的个性化配置,可以在配置目录 Conf 下,建立与项目组名称相同的目录(目录命名格式是:分组名称的首字母大写+其余字母小写的形式),并在目录内定义一个 config.php 配置文件。如 Admin 项目的个性配置文件:

Conf/Admin/config.php

当分组名称的目录下有定义 config.php 文件时,每次访问该分组,系统会自动加载分组的独立配置并覆盖公共配置中相同选项的设定。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP编程与应用
Oct 09 PHP
用session做客户验证时的注意事项
Oct 09 PHP
重新封装zend_soap实现http连接安全认证的php代码
Jan 12 PHP
php数组函数序列之prev() - 移动数组内部指针到上一个元素的位置,并返回该元素值
Oct 31 PHP
php根据生日计算年龄的方法
Jul 13 PHP
PHP mysql事务问题实例分析
Jan 18 PHP
php把字符串指定字符分割成数组的方法
Mar 12 PHP
Yii2.0 RESTful API 基础配置教程详解
Dec 26 PHP
PHP XML Expat解析器知识点总结
Feb 15 PHP
使用laravel的migrate创建数据表的方法
Sep 30 PHP
TP框架实现上传一张图片和批量上传图片的方法分析
Apr 23 PHP
Mac系统下搭建Nginx+php-fpm实例讲解
Dec 15 PHP
ThinkPHP模板循环输出Volist标签用法实例详解
Mar 23 #PHP
ThinkPHP模板Volist标签嵌套循环输出多维数组的方法
Mar 23 #PHP
ThinkPHP路由机制简介
Mar 23 #PHP
PHP getallheaders无法获取自定义头(headers)的问题
Mar 23 #PHP
Zend Framework教程之Zend_Db_Table表关联实例详解
Mar 23 #PHP
SSO单点登录的PHP实现方法(Laravel框架)
Mar 23 #PHP
Zend Framework开发入门经典教程
Mar 23 #PHP
You might like
一个ftp类(ini.php)
2006/10/09 PHP
CI框架中cookie的操作方法分析
2014/12/12 PHP
php中输出json对象的值(实现方法)
2018/03/07 PHP
php实现的生成排列算法示例
2019/07/25 PHP
判断用户的在线状态 onbeforeunload事件
2011/03/05 Javascript
jquery如何把参数列严格转换成数组实现思路
2013/04/01 Javascript
jQuery扁平化风格下拉框美化插件FancySelect使用指南
2015/02/10 Javascript
JavaScript DSL 流畅接口(使用链式调用)实例
2015/03/15 Javascript
JavaScript中的pow()方法使用详解
2015/06/15 Javascript
javascript处理a标签超链接默认事件的方法
2015/06/29 Javascript
jQuery+CSS实现一个侧滑导航菜单代码
2016/05/09 Javascript
jQuery实现的自适应焦点图效果完整实例
2016/08/24 Javascript
分享javascript、jquery实用代码段
2016/10/20 Javascript
Webpack性能优化 DLL 用法详解
2017/08/10 Javascript
JavaScript数据结构之双向链表定义与使用方法示例
2017/10/27 Javascript
Node.JS循环删除非空文件夹及子目录下的所有文件
2018/03/12 Javascript
Vue.js 使用v-cloak后仍显示变量的解决方法
2018/11/19 Javascript
javascript 模块依赖管理的本质深入详解
2020/04/30 Javascript
vue双击事件2.0事件监听(点击-双击-鼠标事件)和事件修饰符操作
2020/07/27 Javascript
[02:04]2016国际邀请赛中国区预选赛VG.R晋级之路
2016/07/01 DOTA
Python浅复制中对象生存周期实例分析
2018/04/02 Python
python的debug实用工具 pdb详解
2019/07/12 Python
基于Python的OCR实现示例
2020/04/03 Python
Python实现手绘图效果实例分享
2020/07/22 Python
基于python图书馆管理系统设计实例详解
2020/08/05 Python
Tory Burch美国官方网站:美国时尚生活品牌
2016/08/01 全球购物
香港交友网站:be2香港
2018/07/22 全球购物
KEEN美国官网:美国人气户外休闲鞋品牌
2021/03/09 全球购物
Yahoo-PHP面试题2
2014/12/06 面试题
linux面试题参考答案(4)
2013/01/28 面试题
应届生财务管理求职信
2013/11/06 职场文书
责任担保书范文
2014/05/21 职场文书
交通志愿者活动总结
2014/06/27 职场文书
2015年社区综治宣传月活动总结
2015/03/25 职场文书
2015年社会治安综合治理工作总结
2015/04/10 职场文书
redis复制有可能碰到的问题汇总
2022/04/03 Redis