Php konfig fájlok
Sziasztok!
Azon agyalok éppen, hogy a gyakorlatban mi haszna van a konfig fájloknak.
Konkrétan példának az adatbázis eléréseket vettem.
Ha mondjuk csinálok egy alap osztályt, ami képes lekérni az adatbázisból:aztán azt kiterjesztem,akkor szerintem teljesen felesleges kigyűjteni külön fájlba az accountot, ami az adott osztályhoz tartozik.
Ha meg mondjuk több osztály van azonos beállításokkal, akkor azokat egy azonos osztályból kell származtatni, és ennyi. Szerintem egy nagyon picivel lesz csak bonyolultabb így megtalálni a jelszavakat.
Ti mit mondtok?
■ Azon agyalok éppen, hogy a gyakorlatban mi haszna van a konfig fájloknak.
Konkrétan példának az adatbázis eléréseket vettem.
Ha mondjuk csinálok egy alap osztályt, ami képes lekérni az adatbázisból:
class DataAccess
{
protected $dsn;
protected $password;
.
.
.
protected function query($sql)
{
...
}
}
class MyDataAccess extends DataAccess
{
protected $dsn='mysql://root@localhost/mydata';
protected $password='Test789Xyz';
public function getSomeInfo()
{
return $this->query('...');
}
.
.
.
}
Ha meg mondjuk több osztály van azonos beállításokkal, akkor azokat egy azonos osztályból kell származtatni, és ennyi. Szerintem egy nagyon picivel lesz csak bonyolultabb így megtalálni a jelszavakat.
Ti mit mondtok?
Config file
Config osztály
Hát ez már más kérdés.. Az osztályaim általában úgy használom fel, hogy a szülőben nem adom meg az elérési utat, hanem csak a "végső" gyerekekben, szóval a final class-ekben. Tehát ha valami alapvető hiba van, akkor a kiterjesztett (szülő) osztályt nyugodtan átírhatom anélkül, hogy a gyereken módosítani kellene (persze csak akkor, ha a felület, amin kommunikálnak állandó marad).
eroforras
Mindez termesztesen csak abban az esetben hasznos, ha 3 vagy tobb configfajlt hasznalsz egy oldalhoz es sok felhasznalo hasznalja az oldalt 1xre
-cs-
Sanyi
???
Ezt nem nagyon értem.
cache
config file
:-)
Környezetek
Az is előfordul, hogy nem csak az adatbázis kapcsolatot kell konfigurálni, hanem sok egyebet is (elérési utak, könyvtárak, formátumok, stb.), mindaz amit az ügyfélnek kell tudnia állítani.
Ok.
Ami nálam nem tiszta még, hogy milyen formában érdemes tárolni az ilyesmit?
Én mondjuk arra gondoltam, hogy a config fájlt front-controllerrel inclucolom, és egy Config nevű osztály lesz benne, ami a különböző osztályoknak intézi az adatok átadását.
Valami ellenvetés? (pl: mindenki XMLt használ, etc..)
konfig fájl legyen
config fájl adott plain text-ben, (pl.: ini), ezt beolvassa egy osztály (ami dönt(het) az adatok formai helyességéről, valamint csak az adott környezetnek megfelelőt tartja meg(dev/test/prod)), aminek a felületén keresztül a többi kód hozzáfér a saját beállításaihoz.
Előnye, hogy a felhasználó könnyen tud változtatni, a kódok meg nem nyulkálnak a plaintextben.