Funkcia fseek

Funkcia fseek umožňuje pohybovať ukazovateľom pozície v súbore. Ako prvý parameter prijíma ukazovateľ na súbor, ako druhý - posun v bajtoch a ako tretí (voliteľný) - bod odkiaľ sa začína. Funkcia vráti 0 pri úspešnom vykonaní a -1 pri chybe.

Syntax

phpfseek(resource $handle, int $offset, int $whence = SEEK_SET): int

Príklad

Presuňme ukazovateľ na 10. bajt od začiatku súboru:

php<?php
  $file = fopen('test.txt', 'r');
  fseek($file, 10);
  echo fgets($file);
  fclose($file);
?>

Príklad

Presuňme ukazovateľ o 5 bajtov od aktuálnej pozície:

php<?php
  $file = fopen('test.txt', 'r');
  fseek($file, 5, SEEK_CUR);
  echo fgets($file);
  fclose($file);
?>

Príklad

Presuňme ukazovateľ o 5 bajtov od konca súboru:

php<?php
  $file = fopen('test.txt', 'r');
  fseek($file, -5, SEEK_END);
  echo fgets($file);
  fclose($file);
?>

Príklad

Skontrolujme výsledok vykonania fseek:

php<?php
  $file = fopen('test.txt', 'r');
  $res = fseek($file, 10);
  echo $res; // 0 pri úspechu, -1 pri chybe
  fclose($file);
?>

Výsledok vykonania kódu:

php0

Pozri tiež

  • funkciu rewind,
    ktorá resetuje ukazovateľ súboru
  • funkciu ftell,
    ktorá vracia aktuálnu pozíciu
  • funkciu fread,
    ktorá číta zo súboru