From: Ivanek (zlutypes@seznam.cz)
Date: 03. 05. 2003, 18:42 CEST
> Nojo, ale co tedy s tim, kdyz Mirex komprimuje HTML do jednoho radku?
> Pouzit stristr na <body, pak strstr na > a nakonec strpos na </body>
> a substr()? Ale strpos neni insensitive...
> Nebo po strstr string otocit, udelat stristr na >ydob/<, otocit zpet
> a oholit ty kraje? Zkusim,co bude rychlejsi... Ivanek.
Tak tady by to prosim bylo:
function myinclude3($what){
$text=join('',file($what));
$text=stristr($text,'<body');
$text=strstr($text,'>');
$text=stristr(strrev($text),'>ydob/<');
echo trim(substr(strrev($text),1,-7));
}
Nebo 'zkondensovane' takto (zalomi se [asi]):
function myinclude3($what){
echo
trim(substr(strrev(stristr(strrev(strstr(stristr(join('',file($what)),'<body'),'>')),'>ydob/<')),1,-7));
}
Rychlomerici to muzou otestovat, jestli se dopracuji podobnych vysledku
jako ja. Testovaci soubor byl dlouhy presne 32000 bytes, nastrkal jsem
asi 3k PRED <body.....> a asi dve kila ZA </body>. Testoval jsem na fci,
kde misto echo bylo return a fci vraceny string jsem strkal do promenne.
1e4 iteraci pres CELOU fci, tedy i se stale opakovanym nacitanim souboru
via file() ve fci ukazalo cas jedne iterace 0.084 sec.
Pak jsem z fce vyhodil nacitani souboru a jako parametr jsem ji daval uz
predem do stringu nacteny soubor. Jedna iterace 0.033 sec.
Ivanek.
______________________________________________________________________
Reklama:
Na náš trh přichází Volkswagen Touran, o němž se říká, že je více než jen rodinný vůz. A už dnes si ho můžete objednat i vy ve všech autosalonech Volkswagen!http://vw.multimedia.cz/clanky/clanek1.php
This archive was generated by hypermail 2.1.6 : 03. 05. 2003, 18:42 CEST