Написать письмо авторам  
 

УЧЕБНИК PHP


справочник функций <Оnline>

Об учебнике

Обновление

Оглавление

  1. Основы PHP
  2. Операторы языка PHP
  3. Строковые функции
  4. Массивы
  5. Функции
  6. Работа с файлами
  7. Регулярные выражения
  8. Сессии и cookies в PHP
  9. Работа с FTP
  10. Проверка данных
  11. Гостевая книга
  12. PHP и MySQL

Продолжение следует



Работа с файлами

Предыдущая Следующая

Перемещение по файлам



При чтении данных из файла указатель текущей позиции перемещается к очередному непрочитанному символу. Существует несколько функций, с помощью которых можно управлять положением этого указателя.

Установка указателя текущей позиции в начало файла производится функцией rewind:

  int rewind ( int file)

Аргумент file является дескриптором файла.

Узнать текущее положение указателя можно при помощи функции ftell:

  int ftell ( int file)

Установить указатель в любое место файла можно, используя функцию fseek:

  int fseek ( int file, int offset [, int whence ])

Функция fseek устанавливает указатель файла на байт со смещением offset (от начала файла, от его конца или от текущей позиции, в зависимости от значения параметра whence). Аргумент file представляет собой дескриптор файла. Аргумент whence задает с какого места отсчитывается смещение offset и может принимать одно из следующих значений:

  • SEEK_SET (отсчитывает позицию начала файла);
  • SEEK_CUR (отсчитывает позицию относительно текущего положения указателя);
  • SEEK_END (отсчитывает позицию относительно конца файла).

По умолчанию аргумент whence имеет значение SEEK_SET.

Узнать, находится ли указатель в конце файла, можно с помощью функции feof:

  int feof ( int file)

Если указатель находится в конце файла, функция возвращает true, в ином случае возвращается false.

Функцию feof удобно использовать при чтении файла:

<?
  $file = fopen ("file.txt","r");
  if ($file)
  {
    while(!feof($file))
    {
      $str = fgets($file);
      echo $str;
      echo ("<br>");
    }
    fclose ( $file);
  }
  else
  {
    echo("Ошибка открытия файла");
  }
?>

При помощи этой функции удобно также определять количество строк в файле:

<?
  $file = fopen ("file.txt","r");
  if ($file)
  {
    $counter = 0;
    while(!feof($file))
    {
      $str = fgets ($file);
      $counter++;
    }
    echo($counter);
    fclose ($file);
  }
  else
  {
    echo("Ошибка открытия файла");
  }
?>


Предыдущая Следующая

 
  Наверх

Используются технологии uCoz