在线文档教程
PHP
文件系统 | File System

feof

feof

(PHP 4, PHP 5, PHP 7)

feof - 在文件指针上测试文件结束

描述

bool feof ( resource $handle )

测试文件指针上的文件结尾。

参数

handle

文件指针必须是有效的,并且必须指向由fopen()或fsockopen()(并且尚未由fclose()关闭)成功打开的文件。

返回值

如果文件指针位于EOF或发生错误(包括套接字超时),则返回TRUE; 否则返回FALSE。

注意

警告

如果由fsockopen()打开的连接未被服务器关闭,则feof()将挂起。要解决此问题,请参阅下面的示例:

示例#1使用feof()处理超时

<?php function safe_feof($fp, &$start = NULL) {  $start = microtime(true  return feof($fp } /* Assuming $fp is previously opened by fsockopen() */ $start = NULL; $timeout = ini_get('default_socket_timeout' while(!safe_feof($fp, $start) && (microtime(true) - $start) < $timeout) {  /* Handle */ } ?>

警告

如果传递的文件指针无效,则可能会出现无限循环,因为feof()无法返回TRUE

示例#2 feof()示例具有无效的文件指针

<?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)) { } fclose($file ?>

← fclose

fflush →