[ Sauron @ 20.12.2005. 14:44 ] @
Postavio sam bota na mom irc kanalu, koji pravi txt fajl.
Želim da na prvoj stranici mog sajta stavim poslednjih dvadesetak redova cheta.
E sad je problem...
Meni treba prikaz od nazad.
Trebaju mi poslednji radovi.
Kako to da izvedem?
[ flylord @ 20.12.2005. 15:26 ] @
evo jedno resenje koje je dobro ako imas male fajlove :)
ucitas file u neki niz (sa http://php.net/file) , uradis array reverse (sa http://php.net/array_reverse), iscitas prvih 50 redova, opet uradis array reverse (sa http://php.net/array_reverse), spojis to u string i to je to :D

ovo ti je najprostije resenje koje mi je palo na pamet
[ Sauron @ 20.12.2005. 17:05 ] @
Evo rešenja :)

Code:

<?php
$fd = fopen("http://blabla.com/logs/%23blabla.log", "r");
$lines = array();
while (!feof ($fd)) { array_push($lines, fgets($fd, 4096)); }
fclose($fd);
foreach (array_reverse($lines) as $line)

$line = str_replace("<", "[", $line);
$line = str_replace(">", "]", $line);
print $line . "<br>";
}
?>
[ _BloB_ @ 22.12.2005. 06:58 ] @
Mozda moze efikasnije:

1. ucitas linije fajla u niz
2. u drugi niz kopiras poslednjih 20 redova ,for petlja na primer:
for ($i = size_of(niz1)-21; $i <= size_of(niz1)-1; $i++)

ima uticaja ako je ogroman niz ne moras prvo da radis array_reverse celog niza....

poz

[Ovu poruku je menjao _BloB_ dana 22.12.2005. u 08:06 GMT+1]
[ noviKorisnik @ 22.12.2005. 07:31 ] @
Chat log se menja svakog dana... valjda ti je tako podešeno... tako da ne bi trebalo da trebalo da bude nekih specijalnih problema zbog veličine fajla.

Code:
function pufniposlednjih20_v1 ($niz)
{   $niz2   =   array_reverse ($niz)
;   $niz3   =   array_chunk ($niz2, 20)
;   return      $niz3   [0]
}


ili
Code:
function pufniposlednjih20_v2 ($niz)
{   $out    =   array ()
;   while (count ($out) < 20 && count ($niz) > 0) array_push ($out, array_pop ($niz))
;   return      $out
}

[ Sauron @ 22.12.2005. 07:57 ] @
Ograničio sam veličinu loga na 50kb.
Ali pogledaću da namestim da se prikazuje poslednjih 20,30 redova.
Pogledajte kako izgleda...
www.tolkien.co.yu
www.at-at.org/index.php
posle shoutboxa...

[Ovu poruku je menjao Sauron dana 22.12.2005. u 09:07 GMT+1]
[ pierre @ 22.12.2005. 08:13 ] @
nije bas resenje u phpu al mozes da probas
Code:
<?php
$tajlfajl = `tail -rn 100 /var/irc.log`;
echo "<PRE>$tajlfajl</PRE>";
?>

mada cim do sada niko ovo nije pomenuo to verovatno znaci da ovako nesto ne dolazi u obzir...

[Ovu poruku je menjao pierre dana 22.12.2005. u 09:13 GMT+1]