Привет господа.
пример.
return[
'Controller1' => \DI\factory(function (\Psr\Container\ContainerInterface $c){
return new \project\Controllers\Controller2(
$c->get('Service1'),
$c->get('Service2'),
$c->get('Service3')
);
}),
'Controller2' => \DI\factory(function (\Psr\Container\ContainerInterface $c){
return new \project\Controllers\Controller2(
$c->get('Service1'),
$c->get('Service2'),
$c->get('Service3')
);
}),
'Controller3' => \DI\factory(function (\Psr\Container\ContainerInterface $c){
return new \project\Controllers\Controller3(
$c->get('Service1'),
$c->get('Service2'),
$c->get('Service3')
);
}),
'Service1' => function(){
return new \project\Services\Service1();
},
'Service2' => \DI\factory(function (\Psr\Container\ContainerInterface $c){
return new \project\Service\Service2($c->get('Service1'));
}),
'Service3'=> function(\Psr\Container\ContainerInterface $c){
return new \project\Service\Service3($c->get('setting'));
}
];
Как избежать такого дублирования в контроллерах? Уже глаз замылился доки читать ((