thinkphp6读取配置文件中环境变量定义的方法

本文介绍ThinkPHP6框架中配置文件的使用方法,包括环境变量定义与获取、配置参数读取及批量设置等核心内容。

env配置定义及获取

1.其中两项配置app_debug、config_ext只在.env生效 参见开启调试模式及代码跟踪器
2.除了一级配置外,配置参数名严格区分大小写,建议是使用小写定义配置参数的规范。

配置定义格式:

APP_DEBUG = true
;数据库配置项
[DATABASE]
TYPE = mysql
HOSTNAME = 127.0.0.1
DATABASE = test
USERNAME = username
PASSWORD = password

[LANG]
default_lang = zh-cn

;数组形式
ARR[]=1
ARR[]=2

;数组形式
[TEST]
PATHINFO_PATH[] =  ORIG_PATH_INFO
PATHINFO_PATH[] =  REDIRECT_PATH_INFO
PATHINFO_PATH[] =  REDIRECT_URL

env( 环境变量定义)的获取

首先要引入env的命名空间

use think\facade\Env;


//然后在控制器类的方法中调用Env的get方法
    public function getenv()
    {
        //获取环境变量 如果不存在则使用默认值qipa250
        echo 'qipa250_lang='.Env::get('lang.qipa250_lang','qipa250');
        echo '<br>';
        echo 'default_lang='.Env::get('lang.default_lang');
    }

浏览器中访问,打印结果如下:
在这里插入图片描述因为qipa250_lang变量不存在,所以就使用默认的值qipa250
default_lang的值存在则得到配置文件中的值

配置文件中使用环境变量

可以直接在配置文件中使用环境变量进行本地环境和服务器的自动配置

<?php

use think\facade\Env;

return [
    // 数据库类型
    'type'            => Env::get('database.type', 'mysql'),
    // 服务器地址
    'hostname'        => Env::get('database.hostname', '127.0.0.1'),
    // 数据库名
    'database'        => Env::get('database.database', 'tp6'),
    // 用户名
    'username'        => Env::get('database.username', 'root'),
    // 密码
    'password'        => Env::get('database.password', '123456'),
    // 端口
    'hostport'        => Env::get('database.hostport', '3306'),

配置文件的配置获取

首先需要在你的类文件中引入Config类,然后就可以使用下面的方法读取某个配置参数的值

use think\facade\Config; // 获取配置先把命名空间拿进来

读取一级配置的所有参数(每个配置文件都是独立的一级配置)

Config::get('app');
Config::get('route');

读取单个配置参数

Config::get('app.app_name');
Config::get('route.url_domain_root');

读取数组配置(理论上支持无限级配置参数读取)

Config::get('database.default.host');

判断是否存在某个设置参数:

Config::has('template');
Config::has('route.route_rule_merge');

参数批量设置

Config类不再支持动态设置某个配置参数,但可以支持批量设置更新配置参数。

// 批量设置参数
Config::set(['name1' => 'value1', 'name2' => 'value2'], 'config');
// 获取配置
Config::get('config');
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值