Új hozzászólás Aktív témák
-
válasz
Sk8erPeter
#2862
üzenetére
Nem, csak az volt, hogy ciklusba voltak ágyazva az include-ok, kábé így:
while(iteráció) {
include('ugyanaz a fájl.');
}Én hülyeségem.

HTML űrlap generálás miatt kellett, s nem ilyen volt hanem sok egymásba ágyazott ciklus, így állandóan a winyón kellett kaparnia 17 fájl után, amiből néhányat akár 70x is be kellett ágyazni. Írtam egy osztályt, ami gyorsítótárazva ágyaz be, azaz ha valamit beágyaz, akkor beírja egy változóba is a benne lévő php scriptet, majd ha mégegyszer be kéne ágyazni, akkor már a memóriából olvassa be a scriptet, s eval-lal újra lefuttatja. Persze a szkript lefutása után törlődnek a cuccok a memóriából, így ezzel "csak" 5x tempót értem el, ami még mindig 2x lassabb az egy fájlos módszernél, úgyhogy fogtam magam és becache-eltem egy fájlba az egész generált űrlapot (ami 200x gyorsabb), oszt kész, az úgyis ritkán változik

class Cached_Include {
private static $_cache;
public static function inc($inc, &$importVars)
{
$inc = dirname(__FILE__) . '/' . $inc;
if(!self::$_cache[$file]) {
self::$_cache[$inc] = '?>' . file_get_contents($inc) . '<?';
}
extract($importVars, EXTR_REFS | EXTR_SKIP);
eval(self::$_cache[$inc]);
}
public static function save()
{
file_put_contents('cache.txt', serialize(self::$_cache));
}
public static function load()
{
self::$_cache = unserialize(file_get_contents('cache.txt'));
}
}Sebességek amúgy:
sok fájl, no optimalizálás: 1200-1500ms
sok fájl, cachelt include: 180-200ms
egy fájl (minden ebben van): 80-100ms
cachelve az egész hóbelevanc: 1-10ms
Új hozzászólás Aktív témák
- Gitáros topic
- Házimozi haladó szinten
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Parfüm topik
- Gyúrósok ide!
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- iPhone topik
- Internet Rádió építése (hardver), és programozása
- Milyen alaplapot vegyek?
- Le Mans Ultimate
- További aktív témák...
- Dobozos // iMac // 8GB/256GB // M3 chip // egérrel és billentyűzettel
- Xiaomi Poco X4 Pro 256GB, Kártyafüggetlen, 1 Év Garanciával
- Samsung Galaxy A54 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- Gamer PC-Számítógép! Csere-Beszámítás! I5 10400F / GTX 1660Ti / 16GB DDR4 / 512 Nvme SSD!
- Iphone 15 PRO MAX - 256 GB
- iKing.hu Apple iPhone 17 Pro 256GB Silver használt újszerű 100% akku 72 ciklus garanciás 2026.11.24
- Dell D6000 univerzális dokkoló USB-C/ USB-A, DisplayLink & Dell WD15 (K17A) USB-C + 130-180W töltő
- HIBÁTLAN iPhone 14 Pro 128GB Space Black -1 ÉV GARANCIA - Kártyafüggetlen
- Xbox Elite Series 2 Core kontroller
- LG 39GS95UE - 39" Ívelt OLED / QHD 2K / 240Hz & 0.03ms / 1300 Nits / NVIDIA G-Sync / AMD FreeSync
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs




