Funktion fseek

Die Funktion fseek erlaubt es, die Position des Dateizeigers zu verschieben. Als ersten Parameter akzeptiert sie einen Dateizeiger, als zweiten - ein Offset in Bytes und als dritten (optionalen) - den Bezugspunkt. Die Funktion gibt 0 bei erfolgreicher Ausführung und -1 bei einem Fehler zurück.

Syntax

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

Beispiel

Den Zeiger auf das 10. Byte vom Dateianfang verschieben:

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

Beispiel

Den Zeiger 5 Bytes von der aktuellen Position verschieben:

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

Beispiel

Den Zeiger 5 Bytes vom Dateiende verschieben:

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

Beispiel

Das Ergebnis der fseek-Ausführung prüfen:

php<?php
  $file = fopen('test.txt', 'r');
  $res = fseek($file, 10);
  echo $res; // 0 bei Erfolg, -1 bei Fehler
  fclose($file);
?>

Ergebnis der Codeausführung:

php0

Siehe auch

  • die Funktion rewind,
    die den Dateizeiger zurücksetzt
  • die Funktion ftell,
    die die aktuelle Position zurückgibt
  • die Funktion fread,
    die aus einer Datei liest