Gyorsítótárral alkatrészek 1c-Bitriks - 1c-Bitriks
Vannak helyzetek, amikor a programozó, hogy végezzen projektek keretében Bitrix, zavaros a cache alkatrészeket. Ebben a cikkben szeretnék elmagyarázni a mechanizmus avtokeshirovaniya.
Automatikusan gyorsítótárai 1C-Bitrix - jól fejlett, és meglehetősen bonyolult rendszer, amely lehetővé teszi idők csökkentése számos adatbázis hívások és felgyorsítja oldalakon.
Hogyan működik egy alkatrész?
Bitrix normál komponens az alábbi fájlokat:
- component.php - fájlt a kódot az adatokat generáló a sablon ($ arResult), és összeköti. Ezen kívül bármely intézkedés után az adatokat. Például állítható be az oldal címét, vagy új elemeket, hogy a navigációs lánc.
- template.php - sablon fájlt. Ideális esetben nem soderizhit nincs logika, csak a kimenő adatokat a $ arResult. html-kimenet cache, azaz PHP kódot a fájlban kerül végrehajtásra 1 alkalommal, majd visszatér a html a következő cache frissítési.
- result_modifier.php - fájl, ami össze van kötve, és megváltoztathatja template.php $ arResult. cache valamint template.php
- component_epilog.php - fájl, ami után kapcsolódik template.php. Nincs a gyorsítótárban.
3 fájl kapcsolódó mintát, célszerű szerkeszteni őket. Component.php nem lehet megváltoztatni a szabványos elemeket, van esély, hogy a változások zatrutsya frissítés után. Ilyen esetekben ajánlott, hogy másolja az alkatrész teljesen ezen a területen neve (a mappa / bitrix / components /).
Reakcióvázlat A komponens a következő:
- Ellenőrizze a bemeneti adatokat component.php
- Ellenőrizzük, hogy érvényes (aktív) és cache result_modifier.php template.php fájlt. Ha a gyorsítótár érvényes, akkor annak befejezése a töltés $ arResult és folytassa az 5. lépéssel.
- Abban az esetben érvénytelen cache meg a szükséges intézkedéseket, hogy adatokat szerezzenek. Valójában - tele van egy sor $ arResult
- Csatlakozó result_modifier.php és template.php fájlt, megalakult a kimenet + html, valamint a „tároló” E következtetés és a $ array arResult
- Csatlakozó component_epilog.php fájl
- Végrehajtása a többi kódot component.php
Ne feledd!
Tartalom $ arResult tömb különböző szakaszaiban változik. A result_modifier.php template.php és kap egy tömb, amely tartalmazza az összes adatot kaptuk a 3. lépésben component_epilog.php fájlt és alkatrész kódot, amelyet azután kerül végrehajtásra, a rendelkezésre álló adatok $ arResult tömb, amelynek kulcsait szerepeltek a $ this -> SetResultCacheKeys (Array ()).