А кто ему эту информация предоставит, если настройки хранятся в базе?
У меня в базе лежат настройки модулей, класс Config их от туда достаёт и хранит в таком виде
$config['имя_модуля']['название_настройки'] = 'значение';
Где то в модуле в классе News они могут быть использованы
допустим
$this->Config->get('news','limit');
Ну а вообще ты как всегда, начал копаться в моём гавнокоде, вместо того, что бы рассказать о своём =)
Я привёл абстрактную задачу, замени имена классов другими, например вместо конфига, будет шаблонизатор, а вместо базы данных будет путь к директории шаблона.
Вопрос не в том, что делают эти классы и почему они это делают, а в том как управлять зависимостями.
Мне сейчас по работе любопытна тема шардинга, вот я и задумался, и пример привёл на эту тему.
Могу классы называть A,B,C =)
Давай другой пример. Как бы с терминами друг друга понять.
Фреймворк запускает контроллер сервиса (модуля).
Сервис запускает твой DiC. или нет?
Передаёт его в свою модель которая выводит список пользователей.
Пользователи лежат в базе данных.
В итоге мы имеем class UsersController, class UsersModel и class acb\DB;
№ 1
Как заменить базу данных у UsersModel?
№ 2
Как ты говоришь, база зависит от конфига, то есть abc\DB использует abc\Config
Допустим UserModel тоже использует abc\Config
Как подменять abc\Config в UsersModel не подменяя его в UserModel -> abc\DB
№ 3
Тоже что и во второй, только как подменить abc\Config и в UsersModel и в UserModel -> abc\DB
_____________
Промокод предоставляет скидку на заказ домена и/или хостинга reg.ru
BFCC-3895-8804-9ED2