Alternatív fileok. file_exists
Egy olyan rendszeren dolgozom most, ahol ha egy adott fájl nem található, akkor meg kell próbálja a rendszer egy másik mappában megkeresni az ugyan olyan nevű állományt.
Egyes oldalak esetében akár nagyobb mennyiségű fájlt is meg kell így vizsgálni, akár 100-200at is.A getFilePath keresi meg a pontos helyet, és adja vissza az url-t.
Jelenleg php file_exists függvényét használom, de elég sok ellentmondó véleményt hallottam már a sebességével kapcsolatban.
Ti mit gondoltok?
Azt is olvastam, hogy itt történik valamiféle cache php részről. Ez meddig él? Szabályozható?
Van e valami módszer, ami gyorsabb? Htaccess-el?
Gondolom, ha mögé lenne téve egy adatbázis akkor gyorsabb lenne, de ez sajnos kizárt.
■ Egyes oldalak esetében akár nagyobb mennyiségű fájlt is meg kell így vizsgálni, akár 100-200at is.
<img src="<php echo getFilePath(id); ?>" />
Jelenleg php file_exists függvényét használom, de elég sok ellentmondó véleményt hallottam már a sebességével kapcsolatban.
Ti mit gondoltok?
Azt is olvastam, hogy itt történik valamiféle cache php részről. Ez meddig él? Szabályozható?
Van e valami módszer, ami gyorsabb? Htaccess-el?
Gondolom, ha mögé lenne téve egy adatbázis akkor gyorsabb lenne, de ez sajnos kizárt.
itt történik valamiféle cache
Igazából a fájlrendszer részéről is történik cachelés, ez a cache-t PHP oldalon legfeljebb üríteni tudod, más szabályozást nem igazán tudsz csinálni.
Miért kizárt? Pár perc alatt össze lehet hozni egy SQLite adatbázist, de csinálhatsz egy pusztán fájl alapút, ha csak erre a feladatra szeretnéd használni. Egyszerűen rekurzívan végigjárod a könyvtárakat, és feltérképezed, milyen fájlok vannak a könyvtárakban, és elérési utakat elmented az adatbázisba, vagy a fájlodba. Ezután vagy beolvasod az egész fájlt egy tömbbe, és ebben a tömbben keresel, vagy pedig az elérési utakból generálsz egy PHP fájlt, és azt include-olod be. Persze ebben az esetben ne feledkezz meg a megfelelő escape-elésről.
Ugyanerre gondoltam...
A frissítésre meg jobb esetben megírhatod azt a kiegészítést, hogy új fájl feltöltésekor adja hozzá/régi fájl törlésekor törölje a cache fájlodból is a bejegyzést, ha ez nem megvalósítható, akkor pedig marad a cron-ból való frissítés megfelelő időközönként...
Köszi srácok! Adatbázis
Adatbázis olyan szinten kizárt, hogy 3rd party, nem tudok hozzámatatni, sajátot nem hozhatok létre, de jó ötletet adtatok, a könyvtárak fájlba való letárolásával.
E mellett maradok akkor szerintem, és új elem feltöltésénél, meg újragenerálom az infó fájlt.
Újragenerálás?
Persze nyilván inkább