phpdotenv

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Qu'est-ce que phpdotenv ?

phpdotenv est une bibliothèque PHP populaire pour gérer la configuration d'applications via des variables d'environnement. Elle permet de charger les paramètres depuis un fichier .env dans le tableau $_ENV et les variables globales getenv(), ce qui simplifie la séparation de la configuration et du code. Créée d'après la bibliothèque Ruby dotenv, elle est largement utilisée dans les frameworks PHP modernes (Laravel, Symfony).

Pourquoi utiliser phpdotenv ?

Lors du développement d'applications, il est souvent nécessaire de stocker des données sensibles (mots de passe de base de données, clés API) séparément du code. phpdotenv résout ce problème : vous créez un fichier .env qui n'entre pas dans le dépôt (ajouté dans .gitignore), et la bibliothèque le charge dans l'environnement. Cela garantit la sécurité, la flexibilité (paramètres différents pour dev/staging/prod) et la conformité au principe de l'application 12-factor.

Installation de phpdotenv

Installez la bibliothèque via Composer :

composer require vlucas/phpdotenv

Assurez-vous d'avoir Composer installé et PHP version 7.1 ou supérieure.

Fonctions principales

  • Chargement du fichier .env — analyse clé=valeur avec prise en charge des commentaires (#) et des lignes vides.
  • Variables obligatoires — vérification de la présence des clés nécessaires avec required().
  • Typage — conversion automatique des chaînes en types (boolean, integer, null).
  • Sécurité — échappement des caractères spéciaux, prise en charge des guillemets.
  • Immutabilité — protection contre l'écrasement des variables d'environnement existantes.

Exemple de code PHP

require 'vendor/autoload.php';

use Dotenv\\Dotenv;

// Chargeons .env depuis le répertoire racine$dotenv = Dotenv::createImmutable(__DIR__);$dotenv->load();

// Les variables sont maintenant accessibles via getenv()$dbHost = getenv('DB_HOST');$dbName = getenv('DB_NAME');

// Ou via $_ENVecho $_ENV['APP_ENV']; // 'local'

// Vérification des variables obligatoires$dotenv->required(['DB_HOST', 'DB_NAME']);

// Exemple de fichier .env :// DB_HOST=localhost// DB_NAME=test// APP_ENV=local

Quand utiliser phpdotenv

La bibliothèque est idéale pour :

  • Applications web en PHP (Laravel, Symfony, Slim).
  • Scripts CLI et microservices.
  • Projets nécessitant un changement rapide de configuration sans modifier le code.
  • Développement en équipe — chaque développeur peut avoir son propre .env.
  • Pipelines CI/CD — les variables sont définies via l'environnement du serveur, et non via un fichier.

Important : Ne commitez jamais le fichier .env dans le dépôt. Créez un fichier .env.example avec un modèle pour vos collègues.

Recommendations