Cambiar parámetro del config.yml en Symfony 3 con una función

Me gustaría saber si puedo cambiar una variable creada en config.yml a través de una función llamada desde URL. Es para hacer una elección en el lenguaje por defecto o poder cambiarlo por URL.

Respuestas

#1

No se puede hacer eso, porque los parámetros se incluyen cuando se compila el contenedor de servicios de la aplicación. Sí que puedes utilizar variables de entorno para que el valor de esos parámetros sea dinámico, pero no puedes cambiarlo mediante una URL.

En cualquier caso, Symfony ya soporta de serie lo que quieres hacer, así que creo que te estás complicando un poco:

  • Aquí se explica cómo trabajar con la variable especial _locale y las opciones de configuración relacionadas con el idioma de la aplicación.
  • La aplicación Symfony Demo utiliza todo esto en la práctica, así que puedes ver un ejemplo de cómo hacerlo.