Função fseek
A função fseek permite mover o ponteiro de posição em um arquivo. Como primeiro parâmetro, ela aceita um ponteiro para o arquivo, como segundo - um deslocamento em bytes, e como terceiro (opcional) - o ponto de referência. A função retorna 0 em caso de sucesso e -1 em caso de erro.
Sintaxe
fseek(resource $handle, int $offset, int $whence = SEEK_SET): int
Exemplo
Vamos mover o ponteiro para o 10º byte a partir do início do arquivo:
<?php
$file = fopen('test.txt', 'r');
fseek($file, 10);
echo fgets($file);
fclose($file);
?>
Exemplo
Vamos mover o ponteiro 5 bytes a partir da posição atual:
<?php
$file = fopen('test.txt', 'r');
fseek($file, 5, SEEK_CUR);
echo fgets($file);
fclose($file);
?>
Exemplo
Vamos mover o ponteiro 5 bytes a partir do final do arquivo:
<?php
$file = fopen('test.txt', 'r');
fseek($file, -5, SEEK_END);
echo fgets($file);
fclose($file);
?>
Exemplo
Vamos verificar o resultado da execução do fseek:
<?php
$file = fopen('test.txt', 'r');
$res = fseek($file, 10);
echo $res; // 0 em caso de sucesso, -1 em caso de erro
fclose($file);
?>
Resultado da execução do código:
0