Библиотека для внедрения зависимостей (PSR-11)
Реализация стандарта PSR-11 для работы с контейнером зависимостей в PHP.
🛠 Как это работает
-
Конфигурация
Большая часть зависимостей конфигурируется автоматически с помощью autowiring в constructor.
Вы конфигурируете по минимуму лишь в исключительных случаях и переиспользуете эту конфигурацию дальше. -
Build - генерация На основе вашей конфигурации библиотека создаёт PHP-класс, реализующий
Psr\Conainer\ContainerInterface. -
Использование
Вы используете сгенерированный класс у себя в проекте для разрешения зависимостей.
Если в конфигурации есть ошибки или зависимости не могут быть разрешены - библиотека сообщит об этом на этапе build.
✅ Преимущества
-
Простота
Работаете с готовым классом через стандартный интерфейс. -
Оптимизация
Не требует дополнительного кэширования - всё работает с opcache. -
Скорость Нет runtime-накладных расходов: контейнер готов к использованию.
Все накладные расходы только на этапе build. -
Гибкость
Можно генерировать код при деплое, во время сборки или при первом запросе.
Вы сами определяете как вам удобней.
⚠️ Что стоит учесть
- Требуется сборка
Нужно организовать этап генерации кода, что необычно для типичного PHP-проекта.