phpdotenv

Entrenador de Python en Línea para Principiantes

Aprende Python fácilmente sin sobrecargarte de teoría. Resuelve tareas prácticas con verificación automática, recibe pistas y escribe código directamente en el navegador, sin instalar nada.

Start Course

¿Qué es phpdotenv?

phpdotenv es una popular biblioteca de PHP para gestionar la configuración de aplicaciones a través de variables de entorno. Permite cargar configuraciones desde un archivo .env en el array $_ENV y las variables globales getenv(), lo que simplifica la separación de la configuración y el código. Está inspirada en la biblioteca Ruby dotenv y se utiliza ampliamente en frameworks PHP modernos (Laravel, Symfony).

¿Para qué sirve phpdotenv?

Al desarrollar aplicaciones, a menudo es necesario almacenar datos sensibles (contraseñas de BD, claves API) separados del código. phpdotenv resuelve este problema: creas un archivo .env que no se incluye en el repositorio (se añade a .gitignore), y la biblioteca lo carga en el entorno. Esto garantiza seguridad, flexibilidad (diferentes configuraciones para dev/staging/prod) y el cumplimiento del principio de la aplicación de 12 factores.

Instalación de phpdotenv

Instala la biblioteca a través de Composer:

composer require vlucas/phpdotenv

Asegúrate de tener instalado Composer y PHP versión 7.1 o superior.

Funciones principales

  • Carga del archivo .env — análisis de clave=valor con soporte para comentarios (#) y líneas vacías.
  • Variables obligatorias — verificación de la presencia de claves necesarias usando required().
  • Tipado — conversión automática de cadenas a tipos (boolean, integer, null).
  • Seguridad — escape de caracteres especiales, soporte para comillas.
  • Inmutabilidad — protección contra la sobrescritura de variables de entorno existentes.

Ejemplo de código en PHP

require 'vendor/autoload.php';

use Dotenv\\Dotenv;

// Cargamos .env desde el directorio raíz$dotenv = Dotenv::createImmutable(__DIR__);$dotenv->load();

// Ahora las variables están disponibles a través de getenv()$dbHost = getenv('DB_HOST');$dbName = getenv('DB_NAME');

// O a través de $_ENVecho $_ENV['APP_ENV']; // 'local'

// Verificación de variables obligatorias$dotenv->required(['DB_HOST', 'DB_NAME']);

// Ejemplo de archivo .env:// DB_HOST=localhost// DB_NAME=test// APP_ENV=local

Cuándo usar phpdotenv

La biblioteca es ideal para:

  • Aplicaciones web en PHP (Laravel, Symfony, Slim).
  • Scripts CLI y microservicios.
  • Proyectos donde se requiere un cambio rápido de configuración sin modificar el código.
  • Desarrollo en equipo — cada desarrollador puede tener su propio .env.
  • Tuberías CI/CD — las variables se definen a través del entorno del servidor, no mediante un archivo.

Importante: Nunca subas el archivo .env al repositorio. Crea un .env.example con una plantilla para tus compañeros.

Recommendations