Oletko koskaan ajatellut, miten voit ottaa web-sovelluksesi käyttöön, eikä sinun tarvitse asettaa tietokantojen konfiguraatioita palvelimesi tunnistetiedoilla ennen käyttöönottoa eikä mennä palvelimelle muokkaamaan tunnistetietoja, jotta ne noudattaisivat niitä?
Jos tunnet PHP-kehykset, kuten Laravel ja Symphony, sinun pitäisi tietää niiden .env-tiedostosta. Siihen asetat kaikki paikalliset muuttujasi aina tietokannan tunnistetiedoista sähköpostipalvelun tunnistetietoihin ja kaikkeen siihen, mikä mielestäsi on ominaista ympäristölle (Local/Development, Staging ja Production).
Nämä kaksi PHP-funktiota ovat Laravelin .env-tiedoston salaisuus. Kuten niiden nimestä voi päätellä, toista käytetään ympäristömuuttujien asettamiseen putenv() ja toista muuttujien hakemiseen getenv().
Voit lukea niistä lisää alta:
http://php.net/manual/en/function.getenv.php
http://php.net/manual/en/function.putenv.php
MITEN TOTEUTETAAN NÄITÄ PROJEKTISSANI?
Näitten käyttöönotto on hyvin yksinkertaista, ja kuten arvasitkin, kyllä! Siihen liittyy silmukoita.
LUOTA env.example.php-TIEDOSTO
Tiedän, että ihmettelet, mitä se .example tarkoittaa? Tämä on tiedosto, jonka kopioit ja liität env.php:ksi. Muista, että se on tiedosto, jonka pitäisi olla omaleimainen ympäristölleen, joten lisäät env.php:n .gitignoreen. Palaamme siihen myöhemmin.
Sitä ennen sitä laita alla oleva pätkä tiedostoon.
LUOTA autoload.php-TIEDOSTO
Riippuen siitä, miten autoloadat tiedostoja projektissasi, composerilla/vanhanaikaisella include. Jos käytät composeria, nimeä tämä tiedosto uudelleen joksikin muuksi, sen nimi voi olla oikeastaan mikä tahansa.
Mutta tämän kirjoituksen vuoksi pitäydymme autoload.php:ssä.
Paikkaa alla oleva katkelma tiedostoon.
Huomaa, että autoload.php-tiedostossamme sisällytämme myös env.php eikä env.example.php?
Tämä johtuu siitä, että env.php luodaan uudelleen env.example.php:stä sen ympäristön mukaan, johon sovelluksesi otetaan käyttöön, ja sen erityispiirteen vuoksi sinun pitäisi lisätä se .gitignore-tiedostoihisi.
Kun olet saanut tämän asetukset valmiiksi, kuten aiemmin totesin, riippuen siitä, miten autoloadat tiedostoja hakemistossasi, autoloadaa autoload.php-tiedostosi. Jos kyseessä ei ole Composer-projekti, sisällytä tämä tiedosto projektiin yleensä include "autoload.php";
Voilà! voit käyttää ympäristömuuttujia env('VARIABLE_NAME')
kautta.