Una de las potentes características con que poder crear y escalar una aplicación, es que facilita de un modo muy sencillo, desarrollar empleando el config en Laravel.
Esta flexibilidad para establecer y modificar parámetros de configuración, diferentes y alternos, es parte de la magia que Laravel ofrece.
En el directorio config, podremos crear nuestra propia
configuración de la api, no ya solo de modificar parámetros, sino además de
crear nuestros propios archivos de configuración
Crear un archivo de configuración
Para crearlo basta con crear en la carpeta config, un nuevo
file, a modo de ejemplo podemos llamarlo, sitios.php.
Siguiendo las convenciones de Laravel, un archivo de configuración es esencialmente un array de arrays que agrupa parámetros, o sea que con declarar un return que devuelva un arreglo vacío dentro, ya tendríamos un archivo listo.
Nuestro próximo paso será añadir las opciones que declararan el
comportamiento que esperamos, por tanto siendo un array de array acepta
matrices multidimensionales.
Supongamos que trabajaremos con tres tipos de sitios, sitio_grande, sitio_mediano y sitio_pequeño, a los cuales nos interesa configurarles las opciones url, cookie, y el tiempo de vida de esta; entonces creamos para ellos una matriz múltiples con sus parámetros:
return [
'sitio_grande' => [
'url' => '',
'cookie' => '',
'durac_cookie' => ''
],
'sitio_mediano' => [
'url' => '',
'cookie' => '',
'durac_cookie' => ''
],
'sitio_pequeño' => [
'url' => '',
'cookie' => '',
'durac_cookie' => ''
],
];
En nuestro ejemplo no hemos dado valor a las variables, pues queremos asignarlos luego de modo dinámico, pero si no fuera necesario y tuviéramos valores únicos, el archivo pordria quedar configurado asi:
return [
'sitio_grande' => [
'url' => 'https://sitio_grande.com',
'cookie' => 'ksiwiwjwoiii99k393j33’303j0',
'durac_cookie' => '3600'
],
'sitio_mediano' => [
'url' => 'https://sitio_mediano.com',
'cookie' => 'msksnsossjwoiii5858484n33j0',
'durac_cookie' => '3600'
],
'sitio_pequeño' => [
'url' => 'https://sitio_pequeño.com',
'cookie' => '0siwiwj09090393j33’zjsjiwwj9',
'durac_cookie' => '3600'
],
];
Acceder a la configuración
Para acceder a la configuración podemos usar la fachada Config,
y su método get, siguiendo la notación de punto. Podriamos acceder a la cookie
del sitio mediano, de este modo:
dd(Config::get(‘sitios.sitio_mediano.cookie’);
Esto nos devolverá el valor de la configuración para el sitio medio, y su variable cookie.
La
estructura es :
nombre_archivo_configuracion.nombre_array_nivel_superior.variable.
Para
acceder a las variables y modificarlas, la fachada Config, dispone del método
set, con el cual pasamos un array con dos valores: la ruta de la variable y el
valor que estamos asignadole.
Config::set(‘sitios.sitio_mediano.cookie’,
’82828h2922992922n28282’);
Funcion
Config()
Se
puede acceder también a los parámetros de configuración mediante la función Config(),
su diferencia con la fachada es que no usa métodos para ejecutarse
Para
devolver los valores:
dd(config(‘sitios.sitio_mediano.cookie’);
Para asignar valores:
config(‘sitios.sitio_mediano.cookie’,
’82828h2922992922n28282’);
o
config(‘[sitios.sitio_mediano.cookie’=>
’82828h2922992922n28282’]);
Para
aprovechar de modo más integro y abarcador, las posibilidades de configuración
de Laravel, podemos utilizar las variables de entorno, lo cual protege aún mas
nuestros datos y su acceso.
La estructura que nos ofrece Laravel es hacer referencia a los valores que hemos establecido en el archivo env. donde guardamos las variables de entorno. En nuestro ejemplo nuestro archivo sitios.php quedaría así:
return [
'sitio_grande' => [
'url' => env('URL_SITIO_GRANDE'),
'cookie' => env('COOKIE_SITIO_GRANDE'),
'durac_cookie' => ' env('DURAC_ COOKIE_SITIO_GRANDE')
],
'sitio_mediano' => [
'url' => env('URL_SITIO_MEDIANO'),
'cookie' => env('COOKIE_SITIO_MEDIANO'),
'durac_cookie' => ' env('DURAC_COOKIE_SITIO_MEDIANO')
],
'sitio_pequeño' => [
'url' => env('URL_SITIO_PEQUEÑO'),
'cookie' => env('COOKIE_SITIO_PEQUEÑO'),
'durac_cookie' => ' env('DURAC_COOKIE_SITIO_PEQUEÑO')
],
];
Para lograr esto bastara con haber añadido en el archivo env los valores que esperamos recibir.
Y listo, esto es todo.
Espero modestamente que este artículo, sirva de ayuda a alguien.
Gracias.
…..subir montañas, hermana hombres……