>  기사  >  PHP 프레임워크  >  ThinkPHP6에서 env 환경 변수 사용

ThinkPHP6에서 env 환경 변수 사용

autoload
autoload원래의
2021-03-30 17:02:126320검색

1. env 구성

기본 설치 후 루트 디렉터리에는 .example.env 환경 변수 예제 파일이 있으며, 이는 .env로 직접 변경할 수 있습니다. > 파일을 변경합니다. .example.env环境变量示例文件,可以直接改成.env文件后进行修改。

APP_DEBUG = true

[APP]
DEFAULT_TIMEZONE = Asia/Shanghai

[DATABASE]
TYPE = mysql
HOSTNAME = 127.0.0.1
DATABASE = test
USERNAME = username
PASSWORD = password
HOSTPORT = 3306
CHARSET = utf8
DEBUG = true

[LANG]
default_lang = zh-cn

2.调用 env

  • 要使用Env,在ThinkPHP6的初代版中必须先引入 thinkfacadeEnv 门面类,但是在后续更新中,直接使用了助手函数env(),减少了很多的麻烦。

  • 环境变量的获取不区分大小写

    在ThinkPHP6的目录下的config文件夹中,database.php

<?php

return [
    // 默认使用的数据库连接配置
    &#39;default&#39;         => env(&#39;database.driver&#39;, &#39;mysql&#39;),

    // 自定义时间查询规则
    &#39;time_query_rule&#39; => [],

    // 自动写入时间戳字段
    // true为自动识别类型 false关闭
    // 字符串则明确指定时间字段类型 支持 int timestamp datetime date
    &#39;auto_timestamp&#39;  => true,

    // 时间字段取出后的默认时间格式
    &#39;datetime_format&#39; => &#39;Y-m-d H:i:s&#39;,

    // 数据库连接配置信息
    &#39;connections&#39;     => [
        &#39;mysql&#39; => [
            // 数据库类型
            &#39;type&#39;            => env(&#39;database.type&#39;, &#39;mysql&#39;),
            // 服务器地址
            &#39;hostname&#39;        => env(&#39;database.hostname&#39;, &#39;127.0.0.1&#39;),
            // 数据库名
            &#39;database&#39;        => env(&#39;database.database&#39;, &#39;&#39;),
            // 用户名
            &#39;username&#39;        => env(&#39;database.username&#39;, &#39;root&#39;),
            // 密码
            &#39;password&#39;        => env(&#39;database.password&#39;, &#39;&#39;),
            // 端口
            &#39;hostport&#39;        => env(&#39;database.hostport&#39;, &#39;3306&#39;),
            // 数据库连接参数
            &#39;params&#39;          => [],
            // 数据库编码默认采用utf8
            &#39;charset&#39;         => env(&#39;database.charset&#39;, &#39;utf8&#39;),
            // 数据库表前缀
            &#39;prefix&#39;          => env(&#39;database.prefix&#39;, &#39;&#39;),

            // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
            &#39;deploy&#39;          => 0,
            // 数据库读写是否分离 主从式有效
            &#39;rw_separate&#39;     => false,
            // 读写分离后 主服务器数量
            &#39;master_num&#39;      => 1,
            // 指定从服务器序号
            &#39;slave_no&#39;        => &#39;&#39;,
            // 是否严格检查字段是否存在
            &#39;fields_strict&#39;   => true,
            // 是否需要断线重连
            &#39;break_reconnect&#39; => false,
            // 监听SQL
            &#39;trigger_sql&#39;     => env(&#39;app_debug&#39;, true),
            // 开启字段缓存
            &#39;fields_cache&#39;    => false,
        ],

        // 更多的数据库配置信息
    ],
];


2. env를 호출하세요

ThinkPHP6에서 env 환경 변수 사용

  • Env를 사용하려면 ThinkPHP6의 1세대 버전은 먼저 thinkfacadeEnv 파사드 클래스를 도입해야 하지만 후속 업데이트에서는 도우미 함수 env()가 직접 사용되어 많은 문제.

  • 환경 변수 획득은 대소문자를 구분하지 않습니다

ThinkPHP6디렉토리 아래의 config 폴더 >, database.php는 데이터베이스의 구체적인 구성입니다. 구체적인 내용은 다음과 같습니다. rrreee🎜🎜추천: 🎜 《🎜Thinkphp6🎜》 《🎜PHP 비디오 튜토리얼 🎜》》 🎜최신 thinkphp 비디오 튜토리얼 권장사항 10가지🎜》🎜

위 내용은 ThinkPHP6에서 env 환경 변수 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.