加载顺序:
惯例配置->应用配置->扩展配置->场景配置->模块配置->动配置态
优先级:
动配置态 > 模块配置 > 场景配置 > 扩展配置 > 应用配置 > 惯例配置
从右往左,右边配置文件 的配置会 覆盖 左边配置文件 的配置
路径:thinkphp/convention.php
一般情况下,不对惯例配置进行修改!
路径:application/config.php
1、数据库配置
路径:application/database.php
2、自定义扩展配置
路径:extend目录下,新建配置项文件
配置修改:
修改应用配置文件application/config.php中的app_status属性值,然后在config.php同级目录下,新建名为‘name1’的配置文件。该配置文件可以有多个,根据不同场景,赋予app_status不同的配置属性
// 应用模式状态
'app_status' => 'name1',
根据应用模块的不同(如前台页面模块和后台管理系统模块),单独调用不同的配置文件。
例如,在application/index目录下,新建一个config.php文件,前台模块自动读取该配置文件内的配置参数;
同理。在application/admin目录下,新建一个config.php文件,后台模块自动读取该配置文件内的配置参数。
通过config()等方法,在代码文件中,修改配置文件的某个属性的值:
config('name','newname');//修改配置文件的原属性的值
创建:
在根目录下,创建 .env 文件(通过编辑器创建),书写规范(不能使用中文)
namme='zhangsan'
age=12
//或者
[database]
type='mysql'
root='root'
调用:
通过Env类调用(可以在前面6个配置文件中,引入环境变量,通过修改环境变量,从而达到修改配置文件的效果)
use \think\Env ; //引入环境变量
// Env::get('name');
// Env::get('database.type');
//属性不存在
//Env::get('属性名称','不存在属性值');
// 数据库类型
'type' => Env::get('database.type'),
在惯例配置文件中添加如下配置:
//自定义配置
//单个配置信息
'name' => 'zhangsan',
'age' => 30,
//数组型配置信息
'teacher' => [
'name' => 'xiaowang',
'age' => 29,
],
//单个配置属性
$conf = config('name');
//数组配置,返回数组
$conf = config('teacher');
//返回数组配置下的某一项属性
$conf = config('teacher.name');
//引用类
use \think\Config;
//调用类方法
$conf = Config::get('age');
//数组配置,返回数组
$conf = Config::get('teacher');
//返回数组配置下的某一项属性
$conf = Config::get('teacher.name');
//或者直接调用类里面的方法
$conf = \think\Config::get('age');
//数组配置,返回数组
$conf = \think\Config::get('teacher');
//返回数组配置下的某一项属性
$conf = \think\Config::get('teacher.name');
3、调用扩展配置项
config('扩展文件名'.'属性');
config('扩展文件名');//该扩展配置的所有内容
config('database.hostname');//数据库扩展配置
config('自定义扩展配置名'.'属性');//自定义扩展配置