У меня есть класс, который зависит от другого класса:
class a(PDO $db)
{}
class b(PDO $db, a $a)
{}
Обычно класс создается следующим образом:
$db = new PDO(...);
$a = new a($db);
$b = new b($db, $a);
Используя Zendframework 3.1, я хотел бы использоватьвнедрение зависимости для создания экземпляра b
:
use Zend\Di\Injector;
use Zend\Di\Config;
$config = new Config([
'type'=>b::class[]
]);
$injector = new Injector($config);
$b = $injector->create(b::class), [
'db' => $db
]);
Это правильно устанавливает $ db для класса b
, но пытается повторно создать экземпляр объекта PDO для класса a
, что не идеально, какпередать $ db классу a