Merge pull request #9792 from yiijan/docs-di-container

Docs for DI container [skip ci]
This commit is contained in:
Alexander Makarov
2015-10-01 11:31:26 +03:00

View File

@@ -15,6 +15,7 @@ dependency injection:
* Constructor injection;
* Setter and property injection;
* PHP callable injection.
* Controller action injection.
### Constructor Injection <span id="constructor-injection"></span>
@@ -116,10 +117,12 @@ $foo = $container->get('Foo');
By doing so, the person who wants to configure the `Foo` class no longer needs to be aware of how it is built.
### Controller action injection
### Controller action injection <span id="controller-action-injection"></span>
Controller action injection is a special type of DI where dependecies are resolved per action which is useful for
keeping dependencies number low in MVC controllers.
Controller action injection is a special type of DI where dependecies are declared using the type hints of
method signature and resolved in the runtime when the action is acturally called. It is useful for keeping
the MVC controllers slim and light-weighted since it doesn't require you to configure all the possible dependencies
of the controller beforehand.
```php
public function actionSend($email, EmailValidator $validator)