Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
В реальном проекте не придется слишком много дергать get()
Для примера в Symfony контейнер конфигурируется через отдельный конфиг, не надо дергать контейнер напрямую:
И в итоге превратится это в подобие глобального Service Locator'а, почти как в том же Yii. Лично я бы не рекомендовал...
Этот момент решается индивидуально для каждого из языков.
Для PHP можно юзать что-то типа
/** @var FooClass */
$foo = $container->get('foo');
Или же с версии 7.4 для свойств классов можно указывать тип
private FooClass $foo;
Конкретно в моем случае все немного проще, я могу указать какой тип...
DI является лишь частным случаем IoC. В качестве примера можете посмотреть реализацию в Symfony The DependencyInjection Component (Symfony Docs)
Покажите пример, так как по описанию выглядит подозрительно, будто Вы реализовали не DI, а Service Locator.
Предметная область не должна ничего знать...
На данном сайте используются файлы cookie, чтобы персонализировать контент и сохранить Ваш вход в систему, если Вы зарегистрируетесь.
Продолжая использовать этот сайт, Вы соглашаетесь на использование наших файлов cookie.