SplFileObject::fseek

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

SplFileObject::fseekSe déplace à une position donnée

Description

public SplFileObject::fseek(int $offset, int $whence = SEEK_SET): int

Se déplace à une position donnée d'un fichier, mesurée en octets depuis le début du fichier, obtenue en ajoutant offset à la position spécifiée par le paramètre whence.

Liste de paramètres

offset

La position. Une valeur négative peut être utilisée pour se déplacer en arrière dans le fichier, ce qui peut être utile lorsque SEEK_END est utilisé comme valeur du paramètre whence.

whence

Les valeurs pour le paramètre whence sont :

  • SEEK_SET - La position sera égale à offset octets.
  • SEEK_CUR - La position sera égale à la position courante, plus offset.
  • SEEK_END - La position sera égale à la fin du fichier, plus offset.

Si whence n'est pas spécifié, il prendra la valeur SEEK_SET.

Valeurs de retour

Retourne 0 si le déplacement s'est effectué avec succès, -1 sinon. Notez que la tentative de déplacement après la fin du fichier n'est pas considérée comme une erreur.

Exemples

Exemple #1 Exemple avec SplFileObject::fseek()

<?php
$file
= new SplFileObject("somefile.txt");

// Lecture de la première ligne
$data = $file->fgets();

// Se déplace au début du fichier
// Identique à $file->rewind();
$file->fseek(0);
?>

Voir aussi

  • fseek() - Modifie la position du pointeur de fichier

add a note add a note

User Contributed Notes 1 note

up
-7
wangbuying at gmail dot com
11 years ago
make sure you know this fseek in SplFileObject is different from \fseek.
Argument for fseek in SplFileObject is the line number, not the bytes.
Example:
<?php
$fp
= new SplFileObject('./fseek.txt', 'rb');
$fp->fseek(70); // now go to line 70, not byte 70
echo $fp->fgets();
?>
To Top