Download the PHP package stg/ieu_container without Composer
On this page you can find all versions of the php package stg/ieu_container. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package ieu_container
ieu\Container
PHP Dependency Injection Container inspired by the AngularJS injector and Pimple\Container
Usage
Injection
Dependencies can be injected into services and factories using a dependency array ['dependencyA', 'dependencyB', $callableOrClassname]
where the dependecies will be given to the callable or the class constructor as arguments.
A (slower) way is using the parameter names of the callable or constructor to specify the dependencies. E.g. function($dependencyA, $dependencyB) {...}
has the same result as ['dependencyA', 'dependencyB', function($depA, $depB) { /*...*/ }]
.
Note: This does not work with inner callbacks!
Constant
Constants can be defined using the self ieu\Container\Container::constant(string $name, mixed $value)
-method.
Note: Constants are available during the provider configation cycle!
Values
Values can be defined using the self ieu\Container\Container::value(string $name, mixed $value)
-method.
Factory
Factorys can be defined using the self ieu\Container\Container::factory(string $name, mixed $factory
-method.
Service
Services can be defined using the self ieu\Container\Container::service(string $name, mixed $service)
-method.
The service-method expects a class name or a dependency array with the class name as last element as argument. E.g. ['dependencyA', 'dependencyB', 'Vendor\\Project\\Service']
or just (slower) 'Vendor\\Project\\Service'
where the parameter names of the constructor are used to inject the dependencies.
Decorator
You can use the self ieu\Container\Container::decorator(string $name, mixed $decorator)
-method to overload existing dependencies while receiving the original instance as local dependency. Decorators MUST be a factory
or a provider
.
Provider
A provider can be any object having the public property factory
describing the factory as dependency array. A provider can be set using the self ieu\Container\Container::provider(string $name, object $provider)
-method.
Providers can be accessed during configuration process by using their name with Provider
suffix as dependency.