问答详情
源自:2-12 环境变量的配置和使用

[database]无法生效

database_hostname=localhost

database_username=root

database_password=root   //这种可以可以生效

[database]

hostname=localhost

username=root

password=root   //这种不能生效,怎么解决


提问者:qq_天智惩_0 2018-06-30 17:55

个回答

  • 幕布斯7814784
    2019-04-23 17:25:13

    'PHP_DATABASE' => 
        array (size=3)
          'hostname' => string 'localhost' (length=9)
          'username' => string 'root' (length=4)
          'password' => string 'root' (length=4)

    我输出是这样的

  • 冷月萧锋
    2019-02-06 19:31:15

    if (is_array($val)) {
                foreach ($val as $k => $v) {
                    $item = $name . '_' . strtoupper($k);
                    putenv("$item=$v");
                }
            } else {
                putenv("$name=$val");
                //写入环境变量,才能在打印$_ENV文件的时候显示出来配置的环境变量
                $_ENV[$name]=$val;
            }
        }
    }

    找thinkphp文件夹下的base.php文件,找到上面这一部分代码

    第4行putenv("$item=$v");

    往下加一句$_ENV[$item]=$v;

    这样就行了

  • qq_翻滚吧_2
    2018-07-02 14:01:35

    这是没有区别的,是根据配置文件里面获取hostname的指的,如果你改成database_hostname这样就可以获取到上面的值了