The file pointer must be valid, and must point to
a file successfully opened by fopen() or
fsockopen() (and not yet closed by
fclose()).
Return Values
Returns TRUE if the file pointer is at EOF or an error occurs
(including socket timeout); otherwise returns FALSE.
Notes
Warning
If a connection opened by fsockopen() wasn't closed
by the server, feof() will wait until a timeout has
been reached to return TRUE. The default timeout value is 60 seconds.
You may use stream_set_timeout() to change this
value.
Warning
If passed file pointer is not valid you may get an infinite loop, because
EOF fails to return TRUE.
Example #1 feof() example with an invalid file pointer
<?php // if file can not be read or doesn't exist fopen function returns FALSE $file = @fopen("no_such_file", "r");
// FALSE from fopen will issue warning and result in infinite loop here while (!feof($file)) { }