Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
new Manager(new Foo(), new Boo(), new Woo())new Manager(new Foo(), new Boo(new Foo()), new Woo(new Foo(), new Boo(new Foo())))
$di->addService('MyDbConnection', '\My\Super\MySqlConnector');
$di->addClass('ClassThatUsedDb', '\My\Super\Class', array('&MyDbConnection')); // 3й аргумент - массив параметров конструктора
// ...
$di->newInstance('ClassThatUsedDb')->makeWorkWithDb();
$di->addService('MyDbConnection', '\My\Super\PostgreConnector');
$db = Zend_Db::factory($this->_config->db);
// Задание адаптера по умолчанию для наследников класса Zend_Db_Table_Abstract
Zend_Db_Table_Abstract::setDefaultAdapter($db);
$container->user = function($c){
static $user;
if(is_null($user)) {
$user=new User($c->storage);
}
return $user;
};
spl_object_hash($container->user)!==spl_object_hash($container->user)
IoC на PHP