Συνάρτηση fseek

Η συνάρτηση fseek επιτρέπει τη μετακίνηση του δείκτη θέσης σε ένα αρχείο. Ως πρώτη παράμετρο δέχεται έναν δείκτη σε αρχείο, ως δεύτερη - μια μετατόπιση σε bytes, και ως τρίτη (προαιρετική) - το σημείο αναφοράς. Η συνάρτηση επιστρέφει 0 upon successful execution και -1 σε περίπτωση σφάλματος.

Σύνταξη

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

Παράδειγμα

Ας μετακινήσουμε τον δείκτη στο 10ο byte από την αρχή του αρχείου:

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

Παράδειγμα

Ας μετακινήσουμε τον δείκτη 5 bytes από την τρέχουσα θέση:

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

Παράδειγμα

Ας μετακινήσουμε τον δείκτη 5 bytes από το τέλος του αρχείου:

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

Παράδειγμα

Ας ελέγξουμε το αποτέλεσμα εκτέλεσης της fseek:

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

Αποτέλεσμα εκτέλεσης κώδικα:

php0

Δείτε επίσης

  • συνάρτηση rewind,
    που επαναφέρει τον δείκτη του αρχείου
  • συνάρτηση ftell,
    που επιστρέφει την τρέχουσα θέση
  • συνάρτηση fread,
    που διαβάζει από το αρχείο