int feof(int $f)
Возвращает true, если достигнут конец файла (то есть если указатель файла установлен за концом файла). Эта функция чаще всего используется в следующем контексте:
$f=fopen("myfile.txt","r");
while(!feof($f))
{ $st=fgets($f);
// теперь мы обрабатываем очередную строку $st
// . . .
}
fclose($f);
Лучше избегать подобных конструкций, т.к. в случае больших файлов они довольно медлительны. Лучше читайте файл целиком при помощи File() (см. ниже) или fread() — конечно, если вам нужен доступ к каждой строке этого файла, а не только к нескольким первым!
int fseek(int $f, in $offset, int $whence=SEEK_SET)
Устанавливает указатель файла на байт со смещением $offset (от начала файла, от его конца или от текущей позиции, в зависимости от параметра $whence). Это, впрочем, может и не сработать, если дескриптор $f ассоциирован не с обычным локальным файлом, а с соединением HTTP или FTP.
Параметр $whence, как уже упоминалось, задает, с какого места отсчитывается смещение $offset. В PHP для этого существуют три константы, равные, соответственно, 0, 1 и 2:
r SEEK_SET — устанавливает позицию начиная с начала файла;
r SEEK_CUR — отсчитывает позицию относительно текущей позиции;
r SEEK_END — отсчитывает позицию относительно конца файла.
В случае использования последних двух констант параметр $offset вполне может быть отрицательным (а при применении SEEK_END он будет отрицательным наверняка).
Как это ни странно, но в случае успешного завершения эта функция возвращает 0, а в случае неудачи -1. Почему так сделано — неясно. Наверное, по аналогии с ее Си-эквивалентом?
int ftell(int $f)
Возвращает положение указателя файла. Собственно, вот и все, что делает эта функция.