В настоящее время я портирую наше приложение Symfony на Symfony 4.3. Из документации я понимаю, что вместо выполнения $this->container->get ( 'service_a' )
новой лучшей практикой является использование Dependency Injection для присоединения службы в конструкторе следующим образом:
public function __construct(ServiceA $service_a)
{
$this->service_a = $service_a;
}
У меня есть две службы, которые в определенных функциях вызывают каждуюдругие, ServiceA и ServiceB. Когда я добавил ServiceA в конструктор ServiceB, я не увидел ошибки, но после добавления ServiceB в конструктор ServiceA я получил следующую ошибку:
(1/1) ServiceCircularReferenceException
Circular reference detected for service "App\Service\ServiceA", path: "App\Service\ServiceA -> App\Service\ServiceB -> App\Service\ServiceA".
(Весь этот код работал без проблем в Symfony 2)
Я неправильно понял новую методологию? Я неправильно использую DependencyInjection?