合并ThinkPHP配置文件以消除代码冗余的实现方法


Posted in PHP onJuly 22, 2014

很多时候我们在使用ThinkPHP配置网站前台和网站后台的数据库连接时,往往都是分别在前台的配置文件和后台的配置文件单独都写了配置的。但是有很多时候配置前台和后台的数据库可能是一样的配置,但是在二个文件中用的都是一样的配置,那么这时代码就产生了冗余。

网站前台好使用数据库,比方说用户的注册、用户的登录还有评论等,这些都需要我们在前台使用到数据库,既然使用了数据库那么就得连接数据库!网站后台那就更不用讲了,使用数据库无处不在。

大部分的网站前台和后台都是使用的一个数据库,也就是前台和后台连接数据库的配置信息都是一样的。但是,问题出现了。使用ThinkPHP的话,有些朋友可能就是在前台和后台的配置文件,也就是 Conf 文件夹的config.php文件里都写了连接数据库的配置信息。这时,代码的冗余就在所难免了。

这种情况下,如果更换了服务器配置,两个配置文件都需要重写,稍有疏漏就会造成重大损失。对此,消除冗余,合并配置文件就显得很有必要。具体措施如下:

在与网站前台和后台同一级目录下新建一个PHP文件,比方命名为:config.inc.php ,在这个文件中写数据库的配置信息。如下示例:

<?php
return array(
'DB_TYPE=>'mysql',
'DB_NAME'=>'demo',
'DB_HOST'=>'localhost',
'DB_USER'=>'root',
'DB_PWD'=>'123456',
'DB_PREFIX'=>'demo_'
);
?>

好了,分别在网站前台和后台的配置文件中这样来写:

<?php
$arr01 = array(
//前台或后台其他的配置信息
);
$arr02 = include './config.inc.php';
//组合这二个数组
return array_merge($arr01,$arr02);
?>

采用这个方法可以有效的解决代码冗余的问题。而且在更换数据库地址的时候只要修改config.inc.php这个配置文件即可。

PHP 相关文章推荐
PHP利用REFERER根居访问来地址进行页面跳转
Sep 28 PHP
php生成缩略图示例代码分享(使用gd库实现)
Jan 20 PHP
ThinkPHP里用U方法调用js文件实例
Jun 18 PHP
php实现json编码的方法
Jul 30 PHP
php检查页面是否被百度收录
Oct 28 PHP
PHP数据库连接mysql与mysqli对比分析
Jan 04 PHP
PHP邮件群发机实现代码
Feb 16 PHP
PHP单链表的实现代码
Jul 05 PHP
PHP使用微信开发模式实现搜索已发送图文及匹配关键字回复的方法
Sep 13 PHP
详细分析PHP 命名空间(namespace)
Jun 30 PHP
浅谈PHP之ThinkPHP框架使用详解
Jul 21 PHP
PHP+Redis事务解决高并发下商品超卖问题(推荐)
Aug 03 PHP
PHP中使用glob函数实现一句话删除某个目录下的所有文件
Jul 22 #PHP
async和DOM Script文件加载比较
Jul 20 #PHP
Eclipse的PHP插件PHPEclipse安装和使用
Jul 20 #PHP
php多任务程序实例解析
Jul 19 #PHP
php实现斐波那契数列的简单写法
Jul 19 #PHP
phpmailer发送邮件之后,返回收件人是否阅读了邮件的方法
Jul 19 #PHP
完善CodeIgniter在IDE中代码提示功能的方法
Jul 19 #PHP
You might like
codeigniter框架批量插入数据
2014/01/09 PHP
php switch语句多个值匹配同一代码块的实现
2014/03/03 PHP
php使用gettimeofday函数返回当前时间并存放在关联数组里
2015/03/19 PHP
PHP连接数据库实现注册页面的增删改查操作
2016/03/27 PHP
用javascript将数据库中的TEXT类型数据动态赋值到TEXTAREA中
2007/04/20 Javascript
jquery.boxy插件的iframe扩展代码
2010/07/02 Javascript
拖动布局之保存布局页面cookies篇
2010/10/29 Javascript
在NodeJS中启用ECMAScript 6小结(windos以及Linux)
2014/07/15 NodeJs
JavaScript基础教程之alert弹出提示框实例
2014/10/16 Javascript
浅谈关于JavaScript API设计的一些建议和准则
2015/06/24 Javascript
JavaScript File API文件上传预览
2016/02/02 Javascript
javascript小数精度丢失的完美解决方法
2016/05/31 Javascript
JS &amp; JQuery 动态添加 select option
2016/06/08 Javascript
jQuery实现表格隔行及滑动,点击时变色的方法【测试可用】
2016/08/20 Javascript
Vue.js实现简单ToDoList 前期准备(一)
2016/12/01 Javascript
require.js中的define函数详解
2017/07/10 Javascript
基于Bootstrap下拉框插件bootstrap-select使用方法详解
2018/08/07 Javascript
vue中各种通信传值方式总结
2019/02/14 Javascript
使用vue重构资讯页面的实例代码解析
2019/11/26 Javascript
微信小程序自定义纯净模态框(弹出框)的实例代码
2020/03/09 Javascript
javascript实现数字时钟效果
2021/02/06 Javascript
将Python字符串生成PDF的实例代码详解
2019/05/17 Python
python Django里CSRF 对应策略详解
2019/08/05 Python
python字典setdefault方法和get方法使用实例
2019/12/25 Python
For Art’s Sake官网:手工制作的奢华眼镜
2018/12/15 全球购物
Zooplus罗马尼亚:宠物食品和配件
2019/11/02 全球购物
WebSphere面试题:在WebSphere里面如何部署一个应用
2015/08/02 面试题
历史学专业大学生找工作的自我评价
2013/10/16 职场文书
销售职业生涯规划范文
2014/03/14 职场文书
推荐信格式要求
2014/05/09 职场文书
敬老院献爱心活动总结
2014/07/08 职场文书
组织生活会发言材料
2014/12/15 职场文书
用人单位聘用意向书
2015/05/11 职场文书
python3使用diagrams绘制架构图的步骤
2021/04/08 Python
在HTML5 localStorage中存储对象的示例代码
2021/04/21 Javascript
Python 阶乘详解
2021/10/05 Python