Ответ 1
Как описал Оливер; это специальный вариант для нескольких сред. Разделите разработку, тестирование и производство с помощью .htaccess
прежде чем он даже попадет в код. Чтобы настроить это:
Разработка (Localhost)
<IfModule mod_env.c>
SetEnv CI_ENV development
</IfModule>
Тестирование (ваш локальный сервер)
<IfModule mod_env.c>
SetEnv CI_ENV testing
</IfModule>
Производство (удаленный сервер)
<IfModule mod_env.c>
SetEnv CI_ENV production
</IfModule>
Вы правы, думая, что это никогда не изменится, если не будет какого-то ручного вмешательства. Там не так много документации по этому поводу:
"Эта переменная сервера может быть установлена в вашем файле.htaccess или в конфигурации Apache с помощью SetEnv. Альтернативные методы доступны для nginx и других серверов, или вы можете полностью удалить эту логику и установить константу на основе IP-адресов серверов".
Источник: использование константы окружения