jeroenvandergeer / zf-ioc
There is no license information available for the latest version (0.1.4) of this package.
Controller action dependency injection in Zend Framework 1 using Laravel's IoC container.
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: 2025-04-26 20:30:28 UTC
README
#ZF-IoC
Controller action dependency injection in Zend Framework 1.
Does not have the framework as a composer dependency to support legacy projects (as that is the only reason this package exists).
Currently requires PHP 5.4+ (as required by 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']); });
Example #1
public function indexAction(\App\FooInterface $foo) { var_dump($foo); }
object(App\Foo)
public 'bar' =>
object(App\Bar)
Example #2
public function indexAction() { $container = $this->getInvokeArg('container'); var_dump($container->make('\App\Foo')); }
object(App\Foo)
public 'bar' =>
object(App\Bar)