jeroenvandergeer / zf-ioc
该包最新版本(0.1.4)没有提供许可证信息。
使用Laravel的IoC容器在Zend Framework 1中进行控制器动作依赖注入。
0.1.4
2015-11-05 15:39 UTC
Requires
- php: >=5.4.0
- illuminate/container: ^5.0
This package is not auto-updated.
Last update: 2024-09-28 17:02:14 UTC
README
#ZF-IoC
在Zend Framework 1中进行控制器动作依赖注入。
不将框架作为composer依赖项,以支持旧项目(因为这是该包存在的唯一原因)。
当前需要PHP 5.4+(由illuminate/container 5.0要求)
composer require jeroenvandergeer/zf-ioc
// Container of choice, can be any Laravel compatible container $container = new \Illuminate\Container\Container(); // Build dispatcher with IoC container $dispatcher = new \Jeroenvandergeer\ZfIoc\Dispatcher($container); // Set / replace the dispatcher $frontController = \Zend_Controller_Front::getInstance(); $frontController->setDispatcher($dispatcher); // Optionally register the container with the Zend registry for global binding \Zend_Registry::set('container', $container); // Register binding $container->bind('\App\FooInterface', function($container){ return new \App\Foo($container['\App\Bar']); });
示例 #1
public function indexAction(\App\FooInterface $foo) { var_dump($foo); }
object(App\Foo)
public 'bar' =>
object(App\Bar)
示例 #2
public function indexAction() { $container = $this->getInvokeArg('container'); var_dump($container->make('\App\Foo')); }
object(App\Foo)
public 'bar' =>
object(App\Bar)