PHP Velho Oeste 2024

SplFileObject::fseek

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

SplFileObject::fseekSeek to a position

Description

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

Seek to a position in the file measured in bytes from the beginning of the file, obtained by adding offset to the position specified by whence.

Parameters

offset

The offset. A negative value can be used to move backwards through the file which is useful when SEEK_END is used as the whence value.

whence

whence values are:

  • SEEK_SET - Set position equal to offset bytes.
  • SEEK_CUR - Set position to current location plus offset.
  • SEEK_END - Set position to end-of-file plus offset.

If whence is not specified, it is assumed to be SEEK_SET.

Return Values

Returns 0 if the seek was successful, -1 otherwise. Note that seeking past EOF is not considered an error.

Examples

Example #1 SplFileObject::fseek() example

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

// Read first line
$data = $file->fgets();

// Move back to the beginning of the file
// Same as $file->rewind();
$file->fseek(0);
?>

See Also

  • fseek() - Seeks on a file pointer

add a note add a note

User Contributed Notes 1 note

up
-7
wangbuying at gmail dot com
10 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