7
votes

Let's say I have a simple traditional contact form on my site and I would like it to use the subject "Test: (subject_field value)" in dev environment and "(subject_field_value)" in prod environment when sending e-mail. Is there a way to define a variable called "subject_prefix" in config_dev.yml and config_prod.yml and then just use something like $this->get('config')->get('subject_prefix')? I would expect that call to return "Test: (subject_field value)" in dev environment and "(subject_field_value)" in prod environment.

3

3 Answers

7
votes

The best to do is :

In the config.yml

parameters:
    url: domain.com

In the controller :

$value = $this->container->getParameter('url');

Hope it helps.

In Symfony 2.7+:

$value = $this->getParameter('url');
0
votes

If you do not want to clutter your "parameters.yml" and do want to store it in the config.yml and config_dev.yml look at my answer here:

How do I read configuration settings from Symfony2 config.yml?

The one that contains the two approaches:

  • FIRST APPROACH: Separated config block, getting it as a parameter
  • SECOND APPROACH: Separated config block, injecting the config into a service

Hope this helps!