Config - laborci/eternity2 GitHub Wiki

# Config

A konfigurációs állományok az ./etc/ini mappában találhatóak, ezeken keresztül tudod az alkalmazásod környezetét beállítani. A konfigurációkat yml formában kell megadnod.

A fájl, amivel a konfigurációk betöltése indul, az az env.yml állomány.

Local

Szükség lehet a globális konfiguráció mellett lokális konfigurációs verziókra is. Ennek megoldására vannak a .local.yml állományok. Minden konfig fájlhoz tartozhat egy .local.yml kiterjesztésű lokális állomány is, amivel a konfigurációt az adott futtatási környezethez (szerverhez) tudod igazítani. A .local.yml fájlokat nem szabad verziókezelőre feltölteni. Először a sima yml töltődik be, majd annak adatait írja felül a lokális változat.

Kulcsok

Alapvetően a kulcsok az yml szerkezete alapján kerülnek értelmezésre, kivéve akkor, ha . pont karaktert is használsz egy kulcsban, mert akkor azt a rendszer alkulcsként fogja értelmezni.

Include

Nem kell egy nagy konfigurációs állományt készítened, szegmentálhatod a konfigurációidat és betölthetsz fájlokat különböző kulcsok alá. Az betöltést custom szintaxissal oldja meg az eternity. A vezérlő karaktere a : kettőspont karakter.

:missions.www: missions/www

A missions kulcs www kulcsa alá betölti az ./etc/ini/missions/www.yml fájl tartalmát. (természetesen, ha van ugyanazon a helyen www.local.yml, akkor annak tartalmát ráfésüli a www.yml fájl tartalmára)

Betöltést csak az adott yml root szintjén tudsz kezdeményezni, de a . pont segítségével alkulcsra is tudsz betölteni tartalmakat.

Paths

Útvonalakat is meg tudsz határozni, amik alapvetően a project root-hoz képest lesznek megadva, ha a kulcsodat ~ karakterrel prefixeled:

path:
  ~var: var/

A path.var kulcsra regisztrálja a projektben levő var mappa abszolut útvonalát.

Már regisztrált útvonalkoz képest is megadhatsz további "al" útvonalakat is:

~(path.var)path.vhost: vhost/

A path.vhost kulcsra regisztrálja a var mappában levő vhost mappa abszolut útvonalát

Feldolgozás

A konfigurációs állományok tartalma a feldolgozást követően a var mappában az env.php állományban cache-elésre kerülnek, onnan tölti be őket a rendszer.

Használat

A konfigurációt alapvetően az env facade-eken keresztül érheted el.

  • env($key = null) - lekérdezés
  • setenv($key, $value) - beállítás
  • unsetenv($key) - törlés
// lekérhetsz az env-ből teljes faágakat is és címezheted tömbként annak alkulcsait
echo env('path')['var'];

// vagy a . notációt használva egyből hivatkozhatsz alkulcsokat is
echo env('path.var');