Описание тега php-di

PHP-DI is a simple to use dependency injection container for PHP. It is practical, powerful, and framework-agnostic.
1 ответ

Использование PHP-DI для Wordpress Plugin с использованием PSR-4?

Я пишу плагин WordPress, используя шаблон https://github.com/DevinVinson/WordPress-Plugin-Boilerplate и пытаюсь настроить PHP-DI ( http://php-di.org/) для обработки инъекций. классов через мой плагин. Мой конфиг композитора это { "name" : "emeraldja…
16 мар '18 в 15:58
0 ответов

Как заставить Symfony DI и PHP-DI работать вместе?

Некоторое время назад у меня была проблема с автопроводкой для Controller s. Наконец я решил это, отключив DIC Symfony. Это было нормально для этого случая. Но теперь мне это нужно для использования Symfony's EventDispatcher и прикрепление Listener …
1 ответ

PHPUnit работает с Slim и PHP-DI

Я думаю, что у меня есть недостаток дизайна в моем приложении. Я объясню почему. У меня есть обертка вокруг httpclient, который вводится (через php-di) во все виды других классов. Я использую Slim для создания API. Когда вызов входит в мое приложени…
11 апр '18 в 13:20
1 ответ

PHP DI - не может быть разрешен. Параметр $logger функции __construct() не имеет значения, определенного или предполагаемого

Я пытаюсь получить базовый пример работы PHP-DI, но я просто застрял на довольно простом примере. Я предполагаю, что упускаю что-то простое здесь, но не смог выделить это. Это не распознавание подсказки типа LoggerInterface, но это взято прямо из пр…
29 мар '18 в 09:36
1 ответ

PHP-DI: создать против autowire против get. Или как правильно сопоставить интерфейс с реализацией, предоставленной определением

Для моего контейнера PHP-DI в веб-MVC я подготовил следующее определение для маршрутизатора: return [ 'router' => function (ContainerInterface $c) { //... return new Router(...); } ]; Теперь я хочу сопоставить интерфейс (MyLib\Routing\RouterInter…
27 июл '18 в 19:15
1 ответ

Как установить для определения PHP-DI значение PHPActiveRecord Connection?

Я новичок в внедрении зависимостей и использую следующие инструменты в своем проекте PHP 5.5.9 (под Apache2 и MySql): PHP-DI: "4.2.*@dev" - ( http://php-di.org/) для управления DI (C); PHPActiveRecord: "dev-master" - ( https://github.com/jpfuentes2/…
0 ответов

Параметризованная автопроводка с PHP-DI

Я задаюсь вопросом о наилучшей практике для этого варианта использования: У меня есть и приложение, которое имеет дело с собственной базой данных и другими настроенными пользователем базами данных. Я внедряю соединение с собственной базой данных с п…
05 мар '18 в 12:06
3 ответа

Инъекция частичной зависимости

В контексте MVC у меня есть контроллер, который зависит от службы, а служба, в свою очередь, зависит от источника данных (в конкретном случае - клиента для извлечения данных из стороннего API). Чтобы создать экземпляр службы с фиктивным источником д…
28 апр '17 в 15:43
2 ответа

Внедрение параметров в конструктор с помощью PHP-DI

Я изо всех сил пытаюсь заставить внедрение зависимости работать так, как я ожидаю - Я пытаюсь внедрить класс Api, который должен знать, к какому серверу подключаться конкретному пользователю. Это означает, что переопределение свойств конструктора в …
26 мар '16 в 11:33
2 ответа

Как передать пользовательские данные в сервис с контроллера с помощью PHP-DI

Мои контроллеры имеют объект учетной записи и объект пользователя, и почти все взаимодействия с бэкэндом зависят от этих объектов, чтобы установить права доступа, ограничить загрузку данных, ++++ (я не использую какую-либо конкретную среду) У моих к…
01 апр '18 в 09:58
0 ответов

Внедрение зависимостей на основе конструктора PHP против нового. Какой из них более эффективен?

Существует два типа внедрения зависимостей http://www.javatpoint.com/dependency-injection-in-spring Внедрение зависимостей на основе конструктора Внедрение зависимостей на основе установки Однако, что из следующего является более эффективным и почем…
11 апр '16 в 11:32
1 ответ

PHP-DI Не найдено ни одной записи или класса для "имени интерфейса"

Итак, я пытаюсь настроить php-di в первый раз, но у меня возникли проблемы со сборщиком. Я продолжаю получать ошибку: Uncaught exception 'DI\NotFoundException' with message 'No entry or class found for 'IConnection'' in /path/PHPDiContainer.php' Где…
20 окт '16 в 00:04
0 ответов

Настроить php-di в первый раз

Я установил phpdi через composer, и я пытаюсь создать онлайновые примеры классов Mailer и Usermanager. Я делаю это $container = new DI\Container(); $userManager = $container->get('UserManager'); и я получаю эту фатальную ошибку: Uncaught DI\NotFound…
12 ноя '18 в 16:38
1 ответ

PHP-DI не может быть разрешен: запись не может быть разрешена: параметр xxxxxx для __construct() не имеет значения, определенного или предполагаемого Полное определение

Просто выбросил это здесь, потому что я не мог найти много информации об этой ошибке, и мне потребовалось около 2 часов, чтобы найти ее. лицо ладони В container.php -> DBService определяется как: DBServiceInterface::class => function (ContainerIn…
13 апр '18 в 04:46
0 ответов

Отделить сущность от модели или сохранить их как один класс (SpotORM)

Я постепенно включаю в свой проект ORM (с SpotORM) и внедрение зависимостей (с PHP-DI), и я хочу сделать это правильно. Прямо сейчас я не могу понять, должны ли Entity и Model быть двумя разными классами или только одним. Класс Entity выглядит следу…
31 окт '18 в 13:13
2 ответа

PHP-DI - различия между фабриками и объектами

PHP-DI позволяет некоторым методам определять инъекции, включая фабрики и объекты: http://php-di.org/doc/php-definitions.html. Фабрики: TestClass::class => function () { return new TestClass('param'); } TestClass экземпляр создается лениво, тольк…
20 авг '17 в 22:49
1 ответ

Инжектирование фиктивных объектов с использованием PHP-DI для тестирования контроллеров с помощью PHPUnit

Я реорганизовал некоторые из моих контроллеров для использования внедрения зависимостей через внедрение свойств, как рекомендовано в "рекомендациях": final class ZebraController extends Controller { /** * @Inject * @var AnimalClientInterface */ priv…
1 ответ

Производительность аннотаций Php-Di

Может кто-нибудь объяснить мне, что лучше в отношении производительности в Php-Di? С помощью annotations или же plain constructor params? Аннотации = меньше символов для написания, но это хорошая практика? class A { /** * @Inject * @var B **/ privat…
27 сен '17 в 18:32
1 ответ

Как зарегистрировать слушателей событий в Symfony 4?

Я пишу приложение Symfony. Значит: приложение имеет структуру приложения Symfony и использует M VC Symfony (symfony/http-kernel, symfony/routing и т.д.), но он должен быть как можно более независимым от структуры. Поэтому вместо DI фреймворка я испо…
1 ответ

Начало работы с PHP-DI без сторонних фреймворков

Я только сейчас обнаруживаю внедрение зависимости и хочу применить его к проекту среднего размера, над которым я работаю. У меня уже есть папка классов, которая содержит все классы, используемые в системе / приложение / ядро ​​/ классов Я хотел бы з…
02 фев '15 в 14:30