thinkPHP5.0框架独立配置与动态配置方法


Posted in PHP onMarch 17, 2017

本文实例讲述了thinkPHP5.0框架独立配置与动态配置方法。分享给大家供大家参考,具体如下:

独立配置文件:

新版支持配置文件分离,只需要配置extra_config_list参数(在应用公共配置文件中)。

例如,不使用独立配置文件的话,数据库配置信息应该是在config.php中配置如下:

/* 数据库设置 */
'database'       => [
  // 数据库类型
  'type'    => 'mysql',
  // 服务器地址
  'hostname'  => '127.0.0.1',
  // 数据库名
  'database'  => 'thinkphp',
  // 数据库用户名
  'username'  => 'root',
  // 数据库密码
  'password'  => '',
  // 数据库连接端口
  'hostport'  => '',
  // 数据库连接参数
  'params'   => [],
  // 数据库编码默认采用utf8
  'charset'   => 'utf8',
  // 数据库表前缀
  'prefix'   => '',
  // 数据库调试模式
  'debug'    => false,
],

如果需要使用独立配置文件的话,则首先在config.php中添加配置:

'extra_config_list'   => ['database'],

定义之后,数据库配置就可以独立使用database.php文件,配置内容如下:

/* 数据库设置 */
return [
  // 数据库类型
  'type'    => 'mysql',
  // 服务器地址
  'hostname'  => '127.0.0.1',
  // 数据库名
  'database'  => 'thinkphp',
  // 数据库用户名
  'username'  => 'root',
  // 数据库密码
  'password'  => '',
  // 数据库连接端口
  'hostport'  => '',
  // 数据库连接参数
  'params'   => [],
  // 数据库编码默认采用utf8
  'charset'   => 'utf8',
  // 数据库表前缀
  'prefix'   => '',
  // 数据库调试模式
  'debug'    => false,
],

如果配置了extra_config_list参数,并同时在config.php和database.php文件中都配置的话,则database.php文件的配置会覆盖config.php中的设置。

独立配置文件的参数获取都是二维配置方式,例如,要获取database独立配置文件的type参数,应该是:

Config::get('database.type');

要获取完整的独立配置文件的参数,则使用:

Config::get('database');

系统默认设置了2个独立配置文件,包括database和validate,分别用于设置数据库配置和验证规则定义。

动态配置:

设置配置参数

使用set方法动态设置参数,例如:

Config::set('配置参数','配置值');
// 或者使用助手函数
config('配置参数','配置值');

也可以批量设置,例如:

Config::set([
  '配置参数1'=>'配置值',
  '配置参数2'=>'配置值'
]);
// 或者使用助手函数
config([
  '配置参数1'=>'配置值',
  '配置参数2'=>'配置值'
]);

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

PHP 相关文章推荐
怎样在UNIX系统下安装MySQL
Oct 09 PHP
比较时间段一与时间段二是否有交集的php函数
May 31 PHP
PHP __autoload函数(自动载入类文件)的使用方法
Feb 04 PHP
PHP中数据库单例模式的实现代码分享
Aug 21 PHP
php将HTML表格每行每列转为数组实现采集表格数据的方法
Apr 03 PHP
PHP实现原比例生成缩略图的方法
Feb 03 PHP
老司机传授Ubuntu下Apache+PHP+MySQL环境搭建攻略
Mar 20 PHP
php关闭warning问题的解决方法
May 17 PHP
PHP的AES加密算法完整实例
Jul 20 PHP
thinkPHP3.2.3结合Laypage实现的分页功能示例
May 28 PHP
网站被恶意镜像怎么办 php一段代码轻松搞定(全面版)
Oct 23 PHP
apache集成php7.3.5的详细步骤
Jun 20 PHP
PHP中类的自动加载的方法
Mar 17 #PHP
thinkPHP5.0框架简单配置作用域的方法
Mar 17 #PHP
thinkPHP5.0框架环境变量配置方法
Mar 17 #PHP
php正则判断是否为合法身份证号的方法
Mar 16 #PHP
thinkPHP框架可添加js事件的分页类customPage.class.php完整实例
Mar 16 #PHP
ThinkPHP3.2框架使用addAll()批量插入数据的方法
Mar 16 #PHP
Yii1.1中通过Sql查询进行的分页操作方法
Mar 16 #PHP
You might like
附件名前加网站名
2008/03/23 PHP
php实现cookie加密的方法
2015/03/10 PHP
Symfony2学习笔记之模板用法详解
2016/03/17 PHP
PHP字符串逆序排列实现方法小结【strrev函数,二分法,循环法,递归法】
2017/01/13 PHP
php实现通过soap调用.Net的WebService asmx文件
2017/02/27 PHP
利用XMLHTTP传递参数在另一页面执行并刷新本页
2006/10/26 Javascript
基于jQuery试卷自动排版系统
2010/07/18 Javascript
JavaScript面向对象编程入门教程
2014/04/16 Javascript
JS中如何实现点击a标签返回页面顶部的问题
2017/01/19 Javascript
angularjs项目的页面跳转如何实现(5种方法)
2017/05/25 Javascript
jsonp跨域请求详解
2017/07/13 Javascript
vue监听用户输入和点击功能
2019/09/27 Javascript
javascript实现前端分页功能
2020/11/26 Javascript
使用Python保存网页上的图片或者保存页面为截图
2016/03/05 Python
python实现傅里叶级数展开的实现
2018/07/21 Python
python traceback捕获并打印异常的方法
2018/08/31 Python
拿来就用!Python批量合并PDF的示例代码
2020/08/10 Python
python与js主要区别点总结
2020/09/13 Python
Python ellipsis 的用法详解
2020/11/20 Python
html5需遵循的6个设计原则
2016/04/27 HTML / CSS
Levi’s美国官网:美国著名的牛仔裤品牌
2016/08/19 全球购物
跑鞋、网球鞋、网球拍、服装及装备:Holabird Sports
2016/09/19 全球购物
Kidsroom台湾:来自德国的婴儿用品
2017/12/11 全球购物
威尔逊皮革:Wilsons Leather
2018/12/07 全球购物
地球一小时倡议书
2014/04/15 职场文书
四年级学生评语大全
2014/04/21 职场文书
乡镇安全生产目标责任书
2014/07/23 职场文书
庆祝教师节演讲稿
2014/09/03 职场文书
授权委托书公证
2014/09/14 职场文书
上课迟到检讨书300字
2014/10/15 职场文书
幼师辞职信范文
2015/02/27 职场文书
2015年城市管理工作总结
2015/05/23 职场文书
超市员工管理制度
2015/08/06 职场文书
浅谈vue2的$refs在vue3组合式API中的替代方法
2021/04/18 Vue.js
Element-ui Layout布局(Row和Col组件)的实现
2021/12/06 Vue.js
Pandas 数据编码的十种方法
2022/04/20 Python