Fonction fseek
La fonction fseek permet de déplacer le pointeur de position dans un fichier. Son premier paramètre est un pointeur de fichier, le deuxième est un décalage en octets, et le troisième (optionnel) est le point de référence. La fonction retourne 0 en cas de succès et -1 en cas d'erreur.
Syntaxe
fseek(resource $handle, int $offset, int $whence = SEEK_SET): int
Exemple
Déplaçons le pointeur au 10ème octet depuis le début du fichier :
<?php
$file = fopen('test.txt', 'r');
fseek($file, 10);
echo fgets($file);
fclose($file);
?>
Exemple
Déplaçons le pointeur de 5 octets à partir de la position actuelle :
<?php
$file = fopen('test.txt', 'r');
fseek($file, 5, SEEK_CUR);
echo fgets($file);
fclose($file);
?>
Exemple
Déplaçons le pointeur de 5 octets à partir de la fin du fichier :
<?php
$file = fopen('test.txt', 'r');
fseek($file, -5, SEEK_END);
echo fgets($file);
fclose($file);
?>
Exemple
Vérifions le résultat de l'exécution de fseek :
<?php
$file = fopen('test.txt', 'r');
$res = fseek($file, 10);
echo $res; // 0 en cas de succès, -1 en cas d'erreur
fclose($file);
?>
Résultat de l'exécution du code :
0