Zend framework2 ZF2共享创建的对象
我需要知道我如何才能分享我的应用程序类 实际上,我在module.php中创建了一个Foo对象,设置了一些属性,并希望在另一个类中使用这个创建的Foo类。创建Foo对象时,我的Bar对象不存在Zend framework2 ZF2共享创建的对象,zend-framework2,Zend Framework2,我需要知道我如何才能分享我的应用程序类 实际上,我在module.php中创建了一个Foo对象,设置了一些属性,并希望在另一个类中使用这个创建的Foo类。创建Foo对象时,我的Bar对象不存在 我想我必须使用ServiceManager,但我不知道如何使用它。您可以在Module.php中的工厂中创建对象,如下所示: public function getServiceConfig() { return array( 'factories' => array(
我想我必须使用ServiceManager,但我不知道如何使用它。您可以在Module.php中的工厂中创建对象,如下所示:
public function getServiceConfig()
{
return array(
'factories' => array(
'My\Foo' => function($sm) {
$foo = new \My\Foo();
$foo->setAtt('value');
return $foo;
},
),
);
}
$this->getServiceLocator()->get('My\Foo')
然后从服务管理器获取,例如从控制器获取,如下所示:
public function getServiceConfig()
{
return array(
'factories' => array(
'My\Foo' => function($sm) {
$foo = new \My\Foo();
$foo->setAtt('value');
return $foo;
},
),
);
}
$this->getServiceLocator()->get('My\Foo')
好的,非常好的解决方案。如果我通过module.php中的ServiceLocator获取对象,并设置值$foo->setAtt(“hello”)。如果想在我的Bar对象中获取该值,可以使用$this->getServiceLocator()->get()->getAtt()。我希望能够访问在另一个类中设置的值。