小丑路人 2017-11-10 13:08:57 2907次浏览 0条回复 0 0 0

新建一个用于引入的文件

我的文件名:migrate_analysis_env.php (我的路径为:common文件下。可以根据意愿自行修改)

<?php
    global $ENV_DATA;
    /**
     * 读取文件 .env 文件的全部内容,以数组形式储存。
     */
    $file_path = dirname(__DIR__).'/.env';
    $ENV_DATA = file($file_path);
    /**
     * 对 .env 文件中的 配置信息,进行分离组装。
     */
    if(!empty($ENV_DATA)){
        foreach ($ENV_DATA as $value) {
            /**
             * 移除数组中,注释的信息
             */
            if(strstr($value,'#') == false && trim($value) != '' && strstr($value,'=') == true) $this_data[] = 	$value;
        }
        foreach ($this_data as $v) {
            /**
             * 对于配置信息赋值,进行键值分离操作
             */
            if(substr_count($v,'=') == 1){
                $value = explode('=', $v);
                $regroup[trim($value[0])] = trim($value[1]);
            }else
                $regroup[trim(substr($v,0,strpos($v,'=')))] = trim(substr($v,strpos($v,'=')+1));
        }
        $ENV_DATA = $regroup;
        unset($file_path, $this_data, $value, $regroup, $v);
    }

    /**
     * [env]
     * @author:cnpscy <[2278757482@qq.com]>
     * @chineseAnnotation:统一方法名,获取配置信息
     * @englishAnnotation:Unified method name to obtain configuration information
     * @param              [type] $key     [description]
     * @param              [type] $default [description]
     * @return             [type]          [description]
     */
    function env($key, $default = null){
        global $ENV_DATA;
        return empty(empty($key) ? $default : $key) ? '' : $ENV_DATA[$key];
    }
    

在项目根目录下,打开 yii 文件

插入:

/**
 * 添加 .env 文件之后,数据库迁移无法解析 env() 函数
 * 引入文件,已经对 .env 做了解析!
 */
require_once(__DIR__ . '/common/migrate_analysis_env.php');

配置完成!!!

    没有找到数据。
您需要登录后才可以回复。登录 | 立即注册