Componente ENV vlucas/phpdotenv
Descripción
vlucas/phpdotenv es un componente para cargar variables de entorno que permite distinguir configuraciones según el entorno (desarrollo, pruebas, etc.).
Repositorio del proyecto
https://github.com/vlucas/phpdotenv
Instalación
composer require vlucas/phpdotenv
Uso
Crear un archivo .env en la raíz del proyecto
.env
DB_HOST = 127.0.0.1
DB_PORT = 3306
DB_NAME = test
DB_USER = foo
DB_PASSWORD = 123456
Modificar el archivo de configuración
config/database.php
return [
// Base de datos por defecto
'default' => 'mysql',
// Configuración de diversas bases de datos
'connections' => [
'mysql' => [
'driver' => 'mysql',
'host' => getenv('DB_HOST'),
'port' => getenv('DB_PORT'),
'database' => getenv('DB_NAME'),
'username' => getenv('DB_USER'),
'password' => getenv('DB_PASSWORD'),
'unix_socket' => '',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => true,
'engine' => null,
],
],
];
Consejo
Se recomienda añadir el archivo.enval.gitignorepara no subirlo al repositorio. Incluya un archivo de ejemplo.env.exampleen el repositorio. Al desplegar el proyecto, copie.env.examplecomo.envy ajuste la configuración según el entorno. Así el proyecto cargará la configuración adecuada en cada entorno.Nota
vlucas/phpdotenvpuede tener errores con PHP en versión TS (Thread Safe). Use la versión NTS (Non-Thread-Safe). La versión actual de PHP se puede comprobar ejecutandophp -v.