jeroenvandergeer / zf-ioc
Controller action dependency injection in Zend Framework 1 using Laravel's IoC container.
Installs: 581
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 0
Forks: 1
pkg:composer/jeroenvandergeer/zf-ioc
Requires
- php: >=5.4.0
- illuminate/container: ^5.0
This package is not auto-updated.
Last update: 2025-09-27 22:33:22 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)