Configurando Entorno
Laravel tiene una forma particular y propia de llevar las diferentes configuraciones con las cuales vamos a trabajar en nuestra aplicación, esto nos permite separar esto del código, dándonos así la flexibilidad necesaria para poder experimentar con los diferentes entornos que tenemos disponibles.
Es importante conocer los diferentes tipos de configuraciones que maneja Laravel, de forma que podamos saber cuál vamos a utilizar cuando tengamos algún requerimiento en particular. Tenemos 3 grandes grupos de configuraciones:
Configurando el Entorno
Llevar varios entornos de forma manual en una aplicación es algo bastante complejo, que muchas veces nos genera un dolor de cabeza, ya que separar lo que es ambiente de pruebas de un ambiente de producción lleva un trabajo considerable.
Debido a esto, Laravel ya nos ayuda e incluye configuraciones para separar los entornos y así no preocuparnos de donde está corriendo nuestra aplicación, para ello tenemos dentro de la carpeta app un directorio config donde podremos colocar la información correspondiente a nuestros entornos.
Veamos la siguiente imagen con un array donde configuramos varios entornos para una aplicación, luego de observar dicha imagen explicaremos en que consiste:
Dentro del array nos fijamos que tenemos los nombres de los entornos: local, dev, Staging, Live, cada uno de estos corresponde a una etapa de deploy de nuestra aplicación, por ejemplo local, este nos indica que es el ambiente de nuestra maquina como desarrolladores, dentro de ella podemos tener mil y un cosas que no queremos tener en otro ambiente, por lo que nuestra configuración en especial nos ayudará a mantener un buen entorno.
Ahora que tenemos los nombres dentro de la carpeta config que mencionamos anteriormente vamos a crear un directorio por cada ambiente y dentro tendremos las diferentes configuraciones, Laravel es lo suficientemente inteligente como para distinguir entre ambientes, por el nombre de la PC, la IP o la URL, con ello no nos tenemos que preocupar por indicarle donde estamos.
Veamos a continuación una imagen con un directorio con los diferentes ambientes creados:
Vemos que en este caso en particular los entornos Live y Local tienen cada uno un archivo database.php cada uno, esto es para que cada ambiente tenga sus características, por ejemplo la dirección del host, el nombre de usuario, la contraseña, etc.
Ahora, si queremos saber qué ambiente estamos usando en específico lo podemos hacer igualando la variable $enviroment al objeto enviroment y así Laravel nos va a indicar dónde estamos:
$environment = App::environment();Como vemos es bastante sencillo el proceso de separar nuestros diferentes entornos de trabajo en Laravel, así dándonos más libertad de enfocar nuestra energía en crear el código de nuestra aplicación.