首页 > 解决方案 > 如何在 Codeigniter 配置文件中使用环境变量?

问题描述

如何使用环境变量在配置文件中为 codeigniter 设置加密密钥?

我已经建立了一个 dotenv 库,环境变量可以在除了配置文件之外的任何地方工作。我得到一个空字符串。

$config['encryption_key'] = getenv("APP_key");

标签: phpcodeigniterenvironment-variables

解决方案


很长一段时间后,我注意到使用hooks可能会有所帮助:所以application/config/hooks.php我们写了这样的东西:

$hook['post_controller_constructor'][] = array(
    'class' => '',
    'function' => 'set_appkey',
    'filename' => 'appkey.php',
    'filepath' => 'hooks'
);

并创建一个新文件:appkey.php使用application/hooks函数

function set_appkey()
{
    $CI =& get_instance();
    $CI->config->set_item('encryption_key', getenv("APP_KEY"));
}

最后,在 config.php 中,我们将encryption_key变量留空

$config['encryption_key'] = '';

推荐阅读