fseek (): поток не поддерживает поиск - PullRequest
3 голосов
/ 24 января 2020

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

function read_last_line (){

  $line = '';

  $f = fopen('localpath\data.txt', 'r');
  $cursor = -1;

  fseek($f, $cursor, SEEK_END);
  $char = fgetc($f);

  /**
   * Trim trailing newline chars of the file
   */
  while ($char === "\n" || $char === "\r") {
      fseek($f, $cursor--, SEEK_END);
      $char = fgetc($f);
  }

  /**
   * Read until the start of file or first newline char
   */
  while ($char !== false && $char !== "\n" && $char !== "\r") {
      /**
       * Prepend the new char
       */
      $line = $char . $line;
      fseek($f, $cursor--, SEEK_END);
      $char = fgetc($f);
  }      
  echo $line;
  }

При выполнении приведенного выше кода я получаю fseek(): stream does not support seeking, Требуется решение для устранения проблемы.

1 Ответ

0 голосов
/ 24 января 2020

Все формы поиска не поддерживаются и в некоторых случаях приводят к сбою.

Для более детальной проверки документации https://www.php.net/manual/en/function.fseek.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...