fgets question

From: Date: Wed, 14 Aug 2002 17:05:34 +0000
Subject: fgets question
Groups: php.general 
Request: Send a blank email to php-general+get-112554@lists.php.net to get a copy of this message
Hi, I have a question about fgets(), it seems to pick up an extra line at the end of a text file. example, I open a new file named "test" with the vi editor and make it 8 lines long like so (showing newlines as \n): 1\n 2\n 3\n 4\n 5\n 6\n 7\n 8\n I create this PHP program and run it: <?php $fd = fopen ("test","r"); while (!feof ($fd)) {
    $buffer = fgets($fd, 4096);
    echo "buffer is $buffer";
} fclose ($fd); ?> Here is the output (showing newlines as \n): buffer is 1\n buffer is 2\n buffer is 3\n buffer is 4\n buffer is 5\n buffer is 6\n buffer is 7\n buffer is 8\n buffer is My question, why is there an extra line? Or in other words, how do I get this to loop exactly 8 times if there are only 8 lines? TIA Monte

« previous php.general (#112554) next »