jeste k PHP - nacteni fajlu do promnene

From: Spock (spock@bfs.cz)
Date: 19. 03. 2000, 19:25 CET


>mam strucny dotazek - jaky prikaz mam pouzit, kdyz chci
>cely soubor (napriklad clanek.txt) nacist do promnene,
>abych nasledne pomoci NL2BR($promnena) vytvoril cast
>zdroje bez toho, aniz bych musel ty HTML tagy davat primo
>do toho souboru. Cili potrebuju, abych napsal clanecek
>v notepadu, nebo cemkoli jinym, ulozil to v txt a pak zadaval
>napriklad odkaz takto: <a href=clanek.php?src=clanek_cislo...
>Petr Filip

ja bych to ale stejne resil trochu jinak (on by to vubec kazdej resil
po svym, ze? :)) kdyz udelas nl2br($neco) a pak to $neco placnes
na output, tak sice budes mit misto koncu odstavcu <br>, ale html
bude pekne kondenzovany (coz neni na skodu, ale nekdo to nerad)
ve smyslu odstavec<br>odstavec<br>odstavec<br>... ja bych spis
ten clanek nacetl do array a pak bych si jednotlive zpracoval kazdej
odstavec (==radek) i na vyskyt one-char slov (aikosuvz) pred space
a treba ruzny dalsi vopicarny. a taky bych ten string chopnul a dal na
konec <br>\n (nebo <br>\r\n).
sice jsem zacal tim, ze _bych_ ..., ale to neni bych - ja to tak delam.
nebudu sem davat celou tu rutinu, mam tam jeste ruzny jiny specialni
veci jako div, class, id, etc, takze jenom strucna kostra:

function put_clanek($fname,$indflg=false,$spcflg=false) {
# indflg false || true - odsazovat odstavce
# spcflg false || true - nechavat prazdne radky mezi odstavci
# fname - soubor se clankem
$ind="&nbsp;&nbsp;&nbsp;&nbsp; ";
$arr=file($fname);
for($i=0;$i<count($arr);$i++) {
     $par=trim($arr[$i]);
     if (!$par) if ($spcflg) {echo "<br>\r\n"; continue;} else continue;
     $par=($indflg?$ind:"").eregi_replace(" ([aikosuvz]) "," \\1&nbsp;",$par)."<br>\r\n";
     echo $par;
     }
}

# fci pak volas se 3-mi params - zjistenym jmenem clanku
# a flagy pro odsazeni a vynechavane radky. vynechas-li
# flagy, budou default false.

put_clanek($clanek,true,true);

jinou moznosti je, neposilat to na output rovnou v tom cyklu,
ale schovat si ty upraveny radky zpet do array a pak to pouzit
jinde a jinak - podle potreby. no, ale moznosi je nekonecne... :)

hlavne prosim prozkouset - duveruj, ale proveruj. ja jsem to psal
jen tak rovnou sem, poradne jsem to po sobe ani necet a krome
toho mam pazouru v gipsu. sice levou, ale na preklepy to staci. ;-))

Bye, Spock.



This archive was generated by hypermail 2.1.2 : 04. 09. 2001, 00:58 CEST