Конфиг Из Разных Файлов

всем привет

ввиду разрастания конфига, возникло желание разбить его на несколько частей

вопрос: как это правильно сделать, если составные части добавляются в разные части/ключи основного результирующего конфиг-массива?

в отдельных частях массив должен быть внутри конструкции return array ?

очень нужен хелп

Довольно просто. Например есть конфиг с параметрами приложения, и мы хотим слить его с main:




   return CMap::mergeArray(require(dirname(__FILE__).'/main.php'), array(

	'name' => 'TEST',

	'params' => array(

	'adminEmail' => 'asas@asd.ads',

	'phoneNumber' => '555-555-555',

	'motto' => 'TEST',

	),

   ));



Подключаем сей конфиг - и радуемся.

Кукбук рекомендует именно CMap::mergeArray, но возможно и использование array_replace_recursive.

а такая схема =


<?php


return array(

    

	...

	

    'controllerMap'=>require(dirname(__FILE__).'/conf_controllerMap.php'),


	...


	'components'=>array(

        

		...

        

        'urlManager'=>require(dirname(__FILE__).'/conf_urlManager.php'),

        

		...

	),


    'params'=>require(dirname(__FILE__).'/conf_params.php'),

	

);

Я реализовывал такую схему(точнее по большей части урл менеджер и модули), она удобна если ты хочешь реализовать редактирование настроек через веб интерфейс.

то есть ты заранее знаеш в каком файле что лежит где и как всё складывать надо!

Но при работе с проектами в которых в этом нет необходимости это только усложнит управление настройками

Как показано в кукбук есть файл по умолчанию (main.php) и уже есть фалы непосредственно используемые в приложении довольно удобно в main.php вносятся все общие настройки а в фаилы приложения уже непосредственно доп настройки именно для данного приложения!

Кстати для редактирования настроек из веб интерфейса открыл для себя http://www.yiiframework.com/extension/app-manager/ , после того как сделал свой велосипед.

А так да, такой вариант может усложнить жизнь.

P.S. Всех с праздником! :P

не знаю… мне понравилось…

есть возможность управлять каждым смысловым сегментом конфига

p.s. может я ишшо маленький и многого не понимаю?