Variáveis de ambiente seguras com vlucas/phpdotenv
DevOps & Deploy

Variáveis de ambiente seguras com vlucas/phpdotenv

5 min de leitura

.env nunca deve ir para o repositório. Aprenda a separar configuração de código, validar variáveis obrigatórias e lidar com múltiplos ambientes.

Configuração não é código

O princípio do 12-Factor App é claro: configuração (credenciais, URLs de serviços, chaves de API) não deve ser hardcoded nem versionada. Ela varia entre ambientes — dev, staging, produção — e o código não.

vlucas/phpdotenv

phpdotenv carrega variáveis de um arquivo .env para o ambiente do processo ($_ENV, getenv()). O arquivo .env.example documenta as variáveis necessárias sem expor valores reais.

Validação de obrigatórias

phpdotenv permite declarar variáveis obrigatórias e validar seu formato. Se uma variável essencial estiver ausente, a aplicação falha no boot com mensagem clara — muito melhor do que um erro obscuro em runtime:

$dotenv->required(['APP_KEY', 'DB_HOST', 'DB_PASSWORD'])->notEmpty();

Nunca commitar .env

O .gitignore deve sempre incluir .env. Use o .env.example como template documentado. Em CI/CD, injete as variáveis como secrets do pipeline — GitHub Actions, GitLab CI e equivalentes suportam isso nativamente.