note 98262 added to function.fgets
| From: | lzsigaatfreemail dot c3 dot hu at osu1 dot php dot net | Date: | Fri, 04 Jun 2010 18:32:37 +0000 |
| Subject: | note 98262 added to function.fgets | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-169895@lists.php.net to get a copy of this message | ||
Some people try to call feof before fgets, and then ignoring the return value of fgets. This method
leads to processing value FALSE when reaching the end of file.
Bad example:
<?php
$f = fopen ("fgetstest.php", "r");
$ln= 0;
while (! feof ($f)) {
$line= fgets ($f);
++$ln;
printf ("%2d: ", $ln);
if ($line===FALSE) print ("FALSE\n");
else print ($line);
}
fclose ($f);
?>
Good example:
<?php
$f = fopen ("fgetstest.php", "r");
$ln= 0;
while ($line= fgets ($f)) {
++$ln;
printf ("%2d: ", $ln);
if ($line===FALSE) print ("FALSE\n");
else print ($line);
}
fclose ($f);
?>
----
Server IP: 92.43.200.200
Probable Submitter: 84.3.84.19
----
Manual Page -- http://www.php.net/manual/en/function.fgets.php
Edit -- https://master.php.net/note/edit/98262
Del: integrated -- https://master.php.net/note/delete/98262/integrated
Del: useless -- https://master.php.net/note/delete/98262/useless
Del: bad code -- https://master.php.net/note/delete/98262/bad+code
Del: spam -- https://master.php.net/note/delete/98262/spam
Del: non-english -- https://master.php.net/note/delete/98262/non-english
Del: in docs -- https://master.php.net/note/delete/98262/in+docs
Del: other reasons-- https://master.php.net/note/delete/98262
Reject -- https://master.php.net/note/reject/98262
Search -- https://master.php.net/manage/user-notes.php