16、TP5框架中配置文件加载的优先级
文章图片
优先级
打开惯例配置文件
/thinkphp/convention.php
,添加配置项:
// 测试项
'test'=> '我是惯例配置中的内容',
打开应用配置文件
/application/config.php
,添加配置项:// 测试项
'test'=> '我是应用配置中的内容',
创建模块配置文件
/application/index/config.php
,添加配置项:// 测试项
'test'=> '我模块配置中的内容',
最后,在 默认控制器
/application/index/controller/Index.php
文件的index()
方法中动态设置:class Index
{
public function index()
{
Config::set('test','我是动态配置中的内容');
}
}
每一次的添加设置配置项,都用
dump(Config::get('test'));
方式去打印输出看下,会发现每次的设置,都会高于前一次的优先级,打印的内容都会以优先级高的为主。如果应用配置中还有其他配置,那么优先级如下:
文章图片
应用配置的其他情况 注释掉动态配置和模块配置,将配置级别恢复到应用配置级别,因为独立配置项都是二级配置项,所以需要修改应用配置项中的内容为:
// 测试项
'info'=> ['test' => '我是应用配置项中的内容'],
查看方式也对应修改为:
dump(Config::get('info.test'));
创建独立配置文件
/application/extra/info.php
,写入: '我是独立配置项中的内容',
];
?>
查看下配置项的输出,发现,确实是独立配置的优先级高于应用配置。
修改应用配置文件中的
app_status
项的值为home
,创建场景配置文件/application/home.php
,写入: ['test' => '我是场景配置项中的内容',],
];
?>
再查看下配置项的输出,发现,确实是场景配置的优先级高于独立配置。
这种关系,也适用于模块配置:
文章图片
模块配置中的优先级
【16、TP5框架中配置文件加载的优先级】框架配置分级管理,可以最大限度的满足用户对应用环境的个性化需求,配置优先级的概念非常重要,务必牢记!
推荐阅读
- android第三方框架(五)ButterKnife
- 一个人的碎碎念
- 野营记-第五章|野营记-第五章 讨伐梦魇兽
- Shell-Bash变量与运算符
- 清明,是追思、是传承、是感恩。
- 牛人进化+|牛人进化+ 按自己的意愿过一生
- 七老修复好敏感、角质层薄、红血丝
- 华为旁!大社区、地铁新盘,佳兆业城市广场五期!
- 标签、语法规范、内联框架、超链接、CSS的编写位置、CSS语法、开发工具、块和内联、常用选择器、后代元素选择器、伪类、伪元素。
- 螃蟹和这些食物同吃,轻则腹泻、重则中毒!要小心哦~