From: Ivanek (zlutypes@seznam.cz)
Date: 30. 04. 2003, 17:44 CEST
> Tak to je trochu viac ako riadok, dva ;) a mas tam regularny vyraz,
> ktory to bude poriadne brzdit.
Predstav si, ze nebude. Jednoduchy linearni regex typu // a jeste k tomu
pouzity na kratky string je dokonce rychlejsi nez pouziti nektere stringove
fce, napr. strstr(). Napsal jsem si to v obou verzich a to, co jsem
predpokladal, se potvrdilo. Fce:
function myinclude($what,$incl=0){
   $fx=fopen($what,"r");
   $flg=false; $txt='';
   while($line=fgets($fx,8192)){
      if(preg_match("/<!-- myinclude -->/i",$line)){
         $flg=!$flg;
         if(!$incl)continue;
      }
   $txt.=$flg?(trim($line)."\r\n"):'';
   }
   fclose($fx);
return $sum;
}
byla dokonce 1.4x rychlejsi, nezli totez se stristr():
function myinclude($what,$incl=0){
   $fx=fopen($what,"r");
   $flg=false; $txt='';
   while($line=fgets($fx,8192)){
      if(stristr($line,'<!-- myinclude -->')){
         $flg=!$flg;
         if(!$incl)continue;
      }
   $txt.=$flg?(trim($line)."\r\n"):'';
   }
   fclose($fx);
return $sum;
}
Neco jineho by samozrejme bylo pouzit substitucni regex (s///), jak to
tady nekdo navrhoval, a dokonce se substituci podle podskupin v regexu
a jeste ke vsemu na string, ve kterem mel byt CELY soubor...
> IMHO ziadne jednoduche riesenie neexistuje.
IMHO je to jednoduche az az a server to tozhodne nezatizi vic nez include,
ktere parser nejdrive (a zde zbytecne) zkusi interpretovat.
> Mohlo by este fungovat napriklad, ze si ten includovany subor nacitas
> do premennej a potom:
> strip_tags ($subor, [zoznam povolenych html tagov])
> ale to je tiez skrabanie sa lavou rukou za pravym uchom.
> Michal Bilcik (ICQ# 156366308)
To skutecne je. A zase pracovat na stringu s CELYM souborem. a krome
toho to neni to, co Mirex chtel. Moje fce je z tohoto ohledu naopak
znacne univerzalni a flexibilni.
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://ad2.seznam.cz/redir.cgi?instance=51263%26url=http://vw.multimedia.cz/clanky/clanek1.php 
This archive was generated by hypermail 2.1.6 : 30. 04. 2003, 17:44 CEST