[php] laatste 15 lines uit log txt file tonen...

Pagina: 1
Acties:

  • Victorio
  • Registratie: Januari 2001
  • Laatst online: 01-02-2024
Ik heb een script waarmee ik de inhoud van een log file laat zien. Helaas is deze file erg lang en hoef ik alleen maar de laatste 10 regels ervan te zien. (Wil de totale inhoud wel bewaren dus wil de file niet om de zoveel tijd wissen)

Hoe zorg ik dat ik alleen de laatste 10 of 15 regels zie?
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?
 
$Bestand1 = "bla.txt"; 
$ipadres = $REMOTE_ADDR;

if ($ipadres !=  "bla") { 
echo("Vanaf jou IP heb je geen rechten om het log in te zien.<br>Opzouten!");
}
else { 
$weergeefbestand = file($Bestand1);
$weergeefbestandlengte = count($weergeefbestand);
for($i = 0; $i < $weergeefbestandlengte; $i++) {
echo("$weergeefbestand[$i]<br>");
}
}
?>

Verwijderd

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?
 
$Bestand1 = "bla.txt"; 
$ipadres = $REMOTE_ADDR;

if ($ipadres !=  "bla") { 
echo("Vanaf jou IP heb je geen rechten om het log in te zien.<br>Opzouten!");
}
else { 
$weergeefbestand = file($Bestand1);
$weergeefbestandlengte = count($weergeefbestand);
for($i = $weergeefbestandlengte - 11; $i < $weergeefbestandlengte; $i++) {
echo("$weergeefbestand[$i]<br>");
}
}
?>

  • elnino
  • Registratie: Augustus 2001
  • Laatst online: 03-09 05:13
Op donderdag 01 november 2001 19:07 schreef Cheatah het volgende:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?
 
$Bestand1 = "bla.txt"; 
$ipadres = $REMOTE_ADDR;

if ($ipadres !=  "bla") { 
echo("Vanaf jou IP heb je geen rechten om het log in te zien.<br>Opzouten!");
}
else { 
$weergeefbestand = file($Bestand1);
$weergeefbestandlengte = count($weergeefbestand);
for($i = $weergeefbestandlengte - 11; $i < $weergeefbestandlengte; $i++) {
echo("$weergeefbestand[$i]<br>");
}
}
?>
En wat als je logbestand 100MB+ is? Wordt het wel erg langzaam denk ik...

  • Victorio
  • Registratie: Januari 2001
  • Laatst online: 01-02-2024
Thnx... nou 100MB duurt nog wel ff... :)

  • elnino
  • Registratie: Augustus 2001
  • Laatst online: 03-09 05:13
Op donderdag 01 november 2001 19:17 schreef Victorio het volgende:
Thnx... nou 100MB duurt nog wel ff... :)
Mijn logbestanden zouden door de Hostingprovider bijgewerkt moeten worden, maar dat doen ze niet, gevolg: logbestand van 100+ MB... :P (ze doen het bijwerken eens in het jaar)...

Verwijderd

Mocht het richting 100mb gaan kan je beter es naar http://php.net/fseek gaan kijken :)

  • eek
  • Registratie: Februari 2001
  • Laatst online: 06-04-2020

eek

@MagickNET

system("/usr/bin/tail -n 10 /path/to/log/logfile")

Skill is when luck becomes a habit.


  • bartvb
  • Registratie: Oktober 1999
  • Laatst online: 15-09 12:33
$fp = popen ("tail -10 $Bestand1", "r");

(Als je zeker weet dat je op Un*x draait)

Verwijderd

Je kan ook de hele logfile met file() in een array gooien en vervolgens tellen hoe groot de array is. Daarna haal je van de grootte 15 af en doe je even een for lusje, dat werkt ook.

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

Op vrijdag 02 november 2001 12:28 schreef Kyori het volgende:
Je kan ook de hele logfile met file() in een array gooien en vervolgens tellen hoe groot de array is. Daarna haal je van de grootte 15 af en doe je even een for lusje, dat werkt ook.
Je bedoeld zoals "Door Cheatah - donderdag 01 november 2001 19:07" al in deze thread gezegd was?

|:(

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


Verwijderd

Op vrijdag 02 november 2001 12:33 schreef dusty het volgende:

[..]

Je bedoeld zoals "Door Cheatah - donderdag 01 november 2001 19:07" al in deze thread gezegd was?

|:(
:z
Pagina: 1