在CodeIgniter 3.0上实现DotEnv

时间:2017-09-07 16:18:48

标签: php codeigniter codeigniter-3

我正在尝试使用CodeIgniter 3在项目中配置DotEnv。

我看到根(应用程序文件夹外)中有一个composer.json,所以我运行:

require vlucas/phpdotenv

我在config.php上启用了作曲家和钩子:

$config['composer_autoload'] = TRUE;
$config['enable_hooks'] = TRUE;

我已添加:

$hook['pre_system'] = function() {
    $dotenv = new Dotenv\Dotenv(APPPATH);
    $dotenv->load();
};

我在“application”文件夹中创建了一个.env文件。

我的问题

在database.php

中使用$ _ENV或getenv不加载Vars

我找到了什么

我需要跑:

composer dump-autoload

如果我将composer_autoload从TRUE更改为:

$config['composer_autoload'] = '[FULLPATH]/vendor/autoload.php';

它有效!!

文档

根据文档,如果我们将composer_autoupload设置为true,它将从以下位置调用autoload.php:

application/vendor/autoload.php.

我的问题

  1. 这是否意味着,我必须将composer.json移动到应用程序文件夹,以便在其中创建供应商?
  2. 使用$ _ENV
  3. 是否安全

0 个答案:

没有答案