ThinkPHP - 配置项目结构
配置项目结构:
项目如果分为前后台使用。
那么最关键的就是,使用公共部分文件的划分,其中最为核心的就是公共配置文件的使用。
下面介绍的就是怎么将前后台项目的公共部分提起出来。
首先是其他公共的文件夹:
- 这是最顶层的文件配置。

- 详细的目录说明,看下面:
E:\PHP\WWW\THINKPHP
│ admin.php //后台主入口文件
│ index.php //前台主入口文件
├─Admin //后台文件夹
│ ├─Common
│ ├─Conf //后台配置文件夹
│ │ config.php //后台配置文件
│ ├─Lang
│ ├─Lib
│ ├─Runtime
│ └─Tpl
├─Common //公共程序文件夹
├─Config //公共配置文件夹
│ config.php //公共配置文件
├─Home //前台文件夹
│ ├─Common
│ ├─Conf //前台配置文件夹
│ │ config.php //前台配置文件
│ ├─Lang
│ ├─Lib
│ ├─Runtime
│ └─Tpl
├─Public //公共文件夹夹,存放css,js,images等文件
│ ├─Css
│ ├─Images
│ └─Js
├─ThinkPHP //ThinkPHP核心文件
└─Uploads //公共上传文件
关键点:公共配置文件的使用:
- 首先是,Comman/config.php文件的内容:
- 这些配置,就是公共的配置项、
<?php
/**
* 公共配置文件
*/
return array( //配置数据库 - 简洁模式
'DB_PREFIX' => 'tp_',
'DB_DSN' => 'mysql://root:12345678@localhost:3306/test', //开启page_trace模式,首先要在入口文件处开启调试模式
'SHOW_PAGE_TRACE' => TRUE, //修改左右定界符
'TMPL_L_DELIM' => '<{',
'TMPL_R_DELIM' => '}>', //替换系统路径
'TMPL_PARSE_STRING'=>array(
//js 公共文件夹
'__CSS__' => __ROOT__ . '/Public/Css',
//css 公共文件夹
'__JS__' => __ROOT__ . '/Public/Js',
//图片公共文件夹
'__IMAGES__' => __ROOT__ . '/Public/Images',
//上传文件夹
'__UPLOADS__' => __ROOT__ . '/Uploads/',
), //修改URL大小写配置
'URL_CASE_INSENSITIVE' =>true, );
然后是,前台配置文件:
<?php
/**
* 前台配置文件
*/
$publicConf = include './Config/config.php';
$selfConf array(
// '配置项' => '配置值', ); return array_merge($publicConf, $selfConf);
接着是后台配置文件:
<?php
/**
* 后台配置文件
*/
$publicConf = include './Config/config.php';
$selfConf array(
// '配置项' => '配置值', ); return array_merge($publicConf, $selfConf);
这样,如果前后台使用的公共配置项目,就放在Comman/config.php文件中。
前台特有的配置放在前台,后台独有的配置放在后台。
ThinkPHP - 配置项目结构的更多相关文章
- gulp+ThinkPHP配置
gulp+ThinkPHP配置 gulp+ThinkPHP配置 目录结构: html |-src 开发目录 |-Home 静态页面 |-Public 静态资源目录 |-dist 生产目录 |-Home ...
- [转]-Gradle使用手册(二):项目结构
原文地址:http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Using-sourceCompatibility-1. ...
- Gradle使用手册(二):项目结构
原文地址:http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Using-sourceCompatibility-1. ...
- Mybatis 复习 Mybatis 配置 Mybatis项目结构
pom.xml文件已经贴在了文末.该项目不使用mybatis的mybatis-generator-core,而是手写Entities类,DaoImpl类,CoreMapper类 其中,Entities ...
- 02_MyBatis项目结构,所需jar包,ehcache.xml配置,log4j.properties,sqlMapConfig.xml配置,SqlMapGenerator.xml配置
项目结构(所需jar包,配置文件) sqlMapConfig.xml的配置内容如下: <?xmlversion="1.0"encoding="UTF-8&qu ...
- Vue-admin工作整理(二):项目结构个人配置
通过上一篇文章(Vue-admin工作整理(一):项目搭建)操作完毕后,基础项目已经搭建,下面就要对项目本身进行一下项目结构调整来符合自己的项目要求 1.首先要对package.json文件进行调整, ...
- Ionic 入门与实战之第三章:Ionic 项目结构以及路由配置
原文发表于我的技术博客 本文是「Ionic 入门与实战」系列连载的第三章,主要对 Ionic 的项目结构作了介绍,并讲解了Ionic 中的路由概念以及相关配置. 原文发表于我的技术博客 1. Ioni ...
- vue2.0 仿手机新闻站(二)项目结构搭建 及 路由配置
1.项目结构 $ vue init webpack-simple news $ npm install vuex vue-router axios style-loader css-loader -D ...
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 01. 创建项目 +项目结构和配置简介
新建项目:Tutotial.Web 解决方案名称可以把web去掉 视频里面把git这个选项勾选了.我就不勾选了 dotnet CLI创建项目 首先必须安装好了.net Core的SDK dotnet ...
随机推荐
- redis之入门操作
下载安装 $ wget http://download.redis.io/releases/redis-3.2.3.tar.gz $ tar xzf redis-3.2.3.tar.gz $ cd r ...
- Linux 下 Hadoop java api 问题
1. org.apache.hadoop.security.AccessControlException: Permission denied: user=opsuser, access=WRITE, ...
- js面向对象的三大特性
0x00:使用OOP技术,常常要使用许多的代码模块,每个模块都提供特定的功能,每个模块老师孤立的,甚至与其它的模块完全独立,这种模块化的编程方法大大的提供了代码实现的多样性,大大增加了代码的重用性.j ...
- HTML+CSS笔记 CSS入门
简介: </span>年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的<span>脚本解释程序</span>,作为ABC语言的一种继承. & ...
- selenium 学习笔记 ---新手学习记录(3) 问题总结(java)
1.验证码简单处理 /** * 验证码等待输入函数 * */ private void ZcYzm(WebDriver driver){ boolean flag=false; while(flag= ...
- Codecs是以plugin的形式被调用的(显示中文的codec plugin文件是qcncodecs4.dll),可静态载入和动态载入
作为非英语国家人员开发的类库,QT有充分的理由优先考虑支持Unicode和各国自定义字库编码.大家也知道了QT对软件Internationalization有一套完整的开发模型,包括专门为此写的lin ...
- QTableView表格滚动条样式(QSS真是细致到家了)
环境:Qt5.3 IDE:QtCreator 效果预览: 垂直与水平滚动条样式 代码: ui->QTableView->verticalScrollBar()->setStyleSh ...
- 实现最小宽度的几种方法及CSS Expression[转]
实现最小宽度的几种方法及CSS Expression[转] 实现最小宽度的几种方法:css表达式尽量不用 支持FF IE7 IE6 .test { background:blue; min-widt ...
- Linux下shell编程实例
1. 推断一文件是不是块或字符设备文件.假设是将其复制到 /dev 文件夹下 read -p "input a file:" filename if [ -b $filename ...
- Runtime.exec使用错误导致延迟.md
这篇文章是纪录了一个bug解决的过程,可是我还是没有可以真正地找出bug的缘由.希望大牛可以详解. 问题的发现 当接触的系统越来越大的时候,对于系统的性能越来越高的时候,找到表面问题的真正原因就慢慢地 ...