----- Original Message ----- 
From: "Oliver Hankeln" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, June 17, 2004 10:01 AM
Subject: Re: [PHP] Read Last Lines of a Text File


> Scott Miller wrote:
>
> > ----- Original Message ----- 
> > From: "Oliver Hankeln" <[EMAIL PROTECTED]>
> > To: <[EMAIL PROTECTED]>
> > Sent: Thursday, June 17, 2004 9:29 AM
> > Subject: Re: [PHP] Read Last Lines of a Text File
> >
> >
> >
> >>Scott Miller wrote:
> >>
> >>
> >>>>>I've changed my script to the following:
> >>>>>
> >>>>><?php
> >>>>>
> >>>>>$file ="/var/log/radius.log";
> >>>>>
> >>>>>$fp = popen("/usr/bin/tail -$limit $file", 'r');
> >>>>>if (! $fp ) {
> >>>>> echo 'unable to pipe command';
> >>>>>}
> >>>>>while (!feof($fp) ) {
> >>>>> $line = fgets($fp);
> >>>>> print $line;
> >>>>>}
> >>>>>?>
> >>>>>
> >>>>>And now get the following errors:
> >>>>>
> >>>>>Warning: Wrong parameter count for fgets() in /var/www/html/logs2.php
> >
> > on
> >
> >>>>>line 10
> >>>>>
> >>>>>I get this over and over and over (like it's producing the error once
> >>>
> >>>per
> >>>
> >>>
> >>>>>line in the log file).
> >>>>
> >>>>prior to PHP 4.2 you had to use a second parameter for fgets. This
> >>>>parameter is the maximum length per line to read.
> >>>>$line = fget($fp,4096);
> >>>>will probably work.
> >>>>
> >>>>HTH,
> >>>>Oliver
> >>>
> >>>
> >>>Changed that line as shown above, and now get the following error:
> >>>
> >>>Fatal error: Call to undefined function: fget() in
> >
> > /var/www/html/logs2.php
> >
> >>>on line 11
> >>
> >>Sorry. I mean fgets ...
> >>
> >
> > That worked perfectly - now I at least get this:
> >
> [snip]
> > Now, how can I force a \n; to make it look like this:
>
> Simply add one. print $line."\n"; should work. Or if your output is html
> print $line."<br>";
>
> Oliver

The following works perfectly:

<?php

$file ="/var/log/radius.log";


$fp = popen("/usr/bin/tail -$limit $file", 'r');
if (! $fp ) {
  echo 'unable to pipe command';
}
while (!feof($fp) ) {
   $line = fgets($fp, 4096);
print $line."<br>";


}
?>

I've tried bumping up the 4096 to a higher number because it currently only
shows me 10 lines - I'd like to see about 30.  No matter what I change the
number to, it still only shows 10 lines.  What do I need to do to get more
that the 10 lines?

Thanks,
Scott



-- 
Outgoing mail is certified Virus Free.
Checked by AVG Anti-Virus (http://www.grisoft.com).
Version: 7.0.251 / Virus Database: 263.3.2 - Release Date: 6/15/2004

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to