Come creare un file variabile d’ambiente come .env di Laravel e Symphony

Hai mai pensato a come puoi distribuire le tue applicazioni web senza dover impostare le configurazioni del tuo database con le credenziali del tuo server prima del deployment, né andare sul tuo server per modificare le credenziali per seguirle?

Se hai familiarità con framework PHP come Laravel e Symphony, dovresti sapere del loro file .env. È dove imposti tutte le tue variabili locali che vanno dalle credenziali del database alle credenziali del servizio di posta e tutto ciò che pensi debba essere peculiare dell’ambiente (Locale/Sviluppo, Staging e Produzione).

Queste due funzioni PHP sono il segreto dietro il file .env di Laravel. Come suggerisce il loro nome, una è usata per impostare le variabili d’ambiente putenv() mentre l’altra è usata per ottenere le variabili getenv().

Puoi leggere di più su di loro qui sotto:

http://php.net/manual/en/function.getenv.php
http://php.net/manual/en/function.putenv.php

Come posso implementarle nel mio progetto?

Implementarle è molto semplice, e come hai intuito, sì! Comporterà dei cicli.

CREARE UN FILE env.example.php

So che ti starai chiedendo, cosa c’è nel file .example? Questo è il file che copierai e incollerai come env.php. Ricorda che è un file che dovrebbe essere peculiare del suo ambiente, quindi, aggiungerai il tuo env.php a .gitignore. Ci torneremo più tardi.

Prima di allora, metti lo snippet qui sotto nel tuo file.

Puoi aggiungerci altre variabili.

CREARE UN FILE autoload.php

Dipende da come hai autoload i file nel tuo progetto, composer/include alla vecchia maniera. Se usi composer, rinomina questo file in qualcos’altro, può essere chiamato qualsiasi cosa in realtà.

Tuttavia, per il bene di questo articolo, ci atterremo a autoload.php.

Inserisci lo snippet qui sotto nel tuo file.

Assicurati che sia nella stessa directory del tuo file env.example.php

Nota che nel nostro autoload.php stiamo includendo env.php e non env.example.php?
Questo perché, un env.php sarà ricreato da env.example.php per l’ambiente in cui la tua app è distribuita, e a causa della sua peculiarità, dovresti aggiungerlo al tuo .gitignore.

Una volta che hai finito di impostare questo, come ho detto prima, a seconda di come hai autoload i file all’interno della tua directory, autoload il tuo file autoload.php. Per i progetti non-composer, basta includere questo file nel tuo progetto in generale tramite include "autoload.php";

Voilà! puoi accedere alle tue variabili d’ambiente tramite env('VARIABLE_NAME')

.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.