Download the PHP package vanio/vanio-di-extra-bundle without Composer
On this page you can find all versions of the php package vanio/vanio-di-extra-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download vanio/vanio-di-extra-bundle
More information about vanio/vanio-di-extra-bundle
Files in vanio/vanio-di-extra-bundle
Package vanio-di-extra-bundle
Short Description Allows to configure dependency injection using annotations
License MIT
Homepage https://github.com/vaniocz/vanio-di-extra-bundle
Informations about the package vanio-di-extra-bundle
Dependency Injection Extra Bundle
A Symfony2/3 Bundle providing an ability to resolve services by type by calling getByType
on service container and lazily inject services or parameters into public properties of classes implementing ContainerAwareInterface
(like controllers, CLI commands or Doctrine fixtures) using Inject
annotation.
JMS DI Extra Bundle has a similar annotation but it covers much more functionality. This bundle is lightweight and does not use AOP.
Example
It is also possible to inject a service using it's ID
It is also possible to inject an optional dependency which means that it does not throw exception when the service is not found.
Injecting an optional dependency when injecting by type can be achieved using @var annotation.
Injecting of container parameters is also possible
All you need to do for using the Inject annotation is to use Vanio\DiExtraBundle\DependencyInjection\ContainerAwareTrait
where you normally use the default Symfony\Component\DependencyInjection\ContainerAwareTrait
.
There is also an abstract Vanio\DiExtraBundle\Controller
you can extend as a shortcut.
Installation
Installation can be done as usually using composer.
composer require vanio/vanio-di-extra-bundle
Next step is to register this bundle inside your AppKernel
but you also have to tell the Kernel about the new getByType
method by overriding getContainerBaseClass
method.
All versions of vanio-di-extra-bundle with dependencies
doctrine/cache Version ^1.6
symfony/dependency-injection Version ^3.0
symfony/framework-bundle Version ^3.0
vanio/type-parser Version ^0.1@dev