2016-05-11 6 views
0

Возможно, мой английский не самый лучший, я попытаюсь объяснить его.Настройка локального файла конфигурации в Codeigniter

SERVER ROOT 
    —> global_application_folder 
    -> global_system_folder 

    —> app_1 
     - index.php 
     - local_config_file.php 
     - local_database_file.php 

    -> app_2 
     - index.php 
     - local_config_file.php 
     - local_database_file.php 

    -> app_3 
     - index.php 
     - local_config_file.php 
     - local_database_file.php 

В любой папке app_N я есть «index.php», которая заботится, чтобы сказать, где найти папки приложений и системы.

"local_config_file", она должна служить, чтобы изменить некоторые настройки в "Config/config.php", как: $ конфиге [ 'base_url'], $ конфиге [ 'sess_cookie_name'], и т.д., и т.д.

" local_database_file ", он должен служить для изменения некоторых параметров в" config/database.php ".

Все работает, теперь мне нужно найти хороший способ переопределить конфигурации, которые мне нужно изменить для каждого приложения.

В предыдущей ссылке: http://caseymclaughlin.com/articles/setup-a-local-configuration-file-in-codeigniter, (что объясняет, что мне нужно), это описывает способ, но он не работает, возможно, потому, что датирован.

Выполнение различных тестов, единственный рабочий способ я нашел это добавить, например, в конце «конфигурации/config.php»

include_once(FCPATH . 'local_config_file.php'); 

включая файл (в данном случае " local_config_file.php "), который не найден в папке« global_appliacation_folder/config », но в разных папках app_N, поэтому FCPATH на пути включения.

Так что, если я буду app_1, включаемый файл («local_config_file.php»), будет находиться внутри папки app_1

ответ

0

Я бы посоветовал сделать это все отдельные хранилища и использовать и менеджер зависимостей. например. композитор для php.

С помощью этого подхода лучше контролировать отдельные приложения, используя простой способ распределения изменений в ядре. Таким образом, вы можете также оставить старые приложения - зависят от старой версии ядра, закрепленного на определенную версию

Вы можете

  • ядро ​​репо
  • тест приложение 1 репо

    зависит от основного репозитория

  • тест приложение 2 репо

    зависит от основного репозитория и некоторых других репо

  • тест приложение 3 репо

    зависит от основной унаследованной репо версии

+0

Возможно, я не понял. Хорошо для композитора, но я не вижу его полезности в этом случае, управление зависимостями не является проблемой. Если у меня есть приложение и системные папки из папок различного приложения, через index.php каждого приложения я могу решить, какая версия использовать, это не проблема зависимости. Все приложения будут одинаковыми во всех отношениях, мне нужно изменить некоторые конфигурации, такие как config.php или database.php – Robert

Смежные вопросы