合并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 之入门篇
Dec 04 PHP
用PHP实现的生成静态HTML速度快类库
Mar 31 PHP
PHP判断远程url是否有效的几种方法小结
Oct 08 PHP
探讨:如何编写PHP扩展
Jun 13 PHP
PHP怎么实现网站保存快捷方式方便用户随时浏览
Aug 15 PHP
php获取文件名后缀常用方法小结
Feb 24 PHP
PHP实现将视频转成MP4并获取视频预览图的方法
Mar 12 PHP
隐性调用php程序的方法
Jun 13 PHP
Laravel中Trait的用法实例详解
Mar 16 PHP
PHP实现上一篇下一篇的方法实例总结
Sep 22 PHP
PHP微信支付结果通知与回调策略分析
Jan 10 PHP
php7 图形用户界面GUI 开发示例
Feb 22 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
珊瑚虫IP库浅析
2007/02/15 PHP
Jquery下的26个实用小技巧(jQuery tips, tricks &amp; solutions)
2010/03/01 Javascript
javascript 获取页面的高度及滚动条的位置的代码
2010/05/06 Javascript
获取dom元素那些讨厌的位置封装代码
2010/06/23 Javascript
display和visibility的区别示例介绍
2014/02/26 Javascript
动态加载jQuery的方法
2015/06/16 Javascript
AngularJS表格详解及示例代码
2016/08/17 Javascript
超简单的Vue.js环境搭建教程
2017/03/17 Javascript
手把手搭建安装基于windows的Vue.js运行环境
2017/06/12 Javascript
AngularJS 表单验证手机号的实例(非必填)
2017/11/12 Javascript
JavaScript设计模式之构造器模式(生成器模式)定义与用法实例分析
2018/07/26 Javascript
Angular使用cli生成自定义文件、组件的方法
2018/09/04 Javascript
微信小程序公用参数与公用方法用法示例
2019/01/09 Javascript
vue实现新闻展示页的步骤详解
2019/04/11 Javascript
js实现简单页面全屏
2019/09/17 Javascript
JavaScript复制变量三种方法实例详解
2020/01/09 Javascript
Javascript柯里化实现原理及作用解析
2020/10/22 Javascript
JavaScript实现弹出窗口效果
2020/12/09 Javascript
[19:54]夜魇凡尔赛茶话会 第一期02:看图识人
2021/03/11 DOTA
selenium+python实现1688网站验证码图片的截取功能
2018/08/14 Python
python 消除 futureWarning问题的解决
2019/12/25 Python
python图形开发GUI库wxpython使用方法详解
2020/02/14 Python
python中tab键是什么意思
2020/06/18 Python
Selenium alert 弹窗处理的示例代码
2020/08/06 Python
django中ImageField的使用详解
2020/12/21 Python
Argos官网:英国家喻户晓的百货零售连锁商
2017/04/03 全球购物
ParcelABC西班牙:包裹运送和快递服务
2019/12/24 全球购物
Moda Operandi官网:美国奢侈品电商,海淘秀场T台同款
2020/05/26 全球购物
会计专业职业规划:规划自我赢取未来
2014/02/12 职场文书
2014学习十八届四中全会精神思想汇报范文
2014/10/23 职场文书
党支部四风整改方案
2014/10/25 职场文书
2014年技术员工作总结
2014/11/18 职场文书
反腐倡廉观后感
2015/06/08 职场文书
母亲节感言
2015/08/03 职场文书
python之json文件转xml文件案例讲解
2021/08/07 Python
nginx日志格式分析和修改
2022/04/28 Servers