Here is an example, taken from Symfony2 website, about defining a custom service (YAML notation):
services: newsletter_manager: class: %newsletter_manager.class% arguments: [@mailer, @templating] Is there a list of default Symfony2 service objects that can be injected into a custom service as parameters (like @mailer, @templating, @doctrine)?
I know that they come from the Container (which is available, for example, in each Controller class). I've tryed to dump all services, but i'm looking for a more detailed list:
php app/console container:debug logger container Symfony\Bridge\Monolog\Logger mailer container Swift_Mailer translator n/a alias for translator.default ...
The command line php app/console container:debug shows the list of services you can inject into another service or get from a Controller with Controller::get($serviceName).
This list shows only public services. Add the option --show-private into display private services. Private services can only be injected in another service, not accessed from a Controller or any ContainerAware...
EDIT: From Symfony 2.7, use debug:container instead of container:debug
The WebProfilerExtraBundle is very useful for this.
It also adds some details about routing, assetic and twig that are very helpful. As a someone learning to think in Symfony, I REALLY like this bundle.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With