CI应用:多环境

时间:2021-08-03 21:49:30

多环境的作用

可以根据不同的特定环境,加载对应的配置文件


设置多环境

在index.php 文件中定义了 ENVIRONMENT 常量


define('ENVIRONMENT', 'testing');if (defined('ENVIRONMENT'))
{
switch (ENVIRONMENT)
{
case 'development':
error_reporting(E_ALL);
break;
case 'testing':
error_reporting(0);
break;
case 'production':
error_reporting(0);
break;

default:
exit('The application environment is not set correctly.');
}
}


要创建特定环境的配置文件,新建或复制一个配置文件到 application/config/{ENVIRONMENT}/{FILENAME}.php 。

例如,要新建一个生产环境的配置文件,你可以:

  • 新建目录 application/config/production/
  • 将已有的 config.php 文件拷贝到该目录
  • 编辑 application/config/production/config.php 文件,使用生产环境下配置

当你将 ENVIRONMENT 常量设置为 'production' 时,你新建的生产环境下的 config.php 里的配置将会加载。

注意

CodeIgniter 总是先加载全局配置文件(例如,application/config/ 目录下的配置文件), 然后再去尝试加载当前环境的配置文件。这意味着你没必要将所有的配置文件都放到特定环境的配置目录下, 只需要放那些在每个环境下不一样的配置文件就可以了。另外,你也不用拷贝所有的配置文件内容到 特定环境的配置文件中,只需要将那些在每个环境下不一样的配置项拷进去就行了。定义在环境目录下的配置项, 会覆盖掉全局的配置。最终多个配置文件,它们会被合并成一个大的 config 数组里