streamWrapper::stream_seek

(PHP 4 >= 4.3.2, PHP 5, PHP 7, PHP 8)

streamWrapper::stream_seekSeeks to specific location in a stream

Description

public streamWrapper::stream_seek(int $offset, int $whence = SEEK_SET): bool

This method is called in response to fseek().

The read/write position of the stream should be updated according to the offset and whence.

Parameters

offset

The stream offset to seek to.

whence

Possible values:

  • 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.

Note: The current implementation never sets whence to SEEK_CUR; instead such seeks are internally converted to SEEK_SET seeks.

Return Values

Return true if the position was updated, false otherwise.

Notes

Note:

If not implemented, false is assumed as the return value.

Note:

Upon success, streamWrapper::stream_tell() is called directly after calling streamWrapper::stream_seek(). If streamWrapper::stream_tell() fails, the return value to the caller function will be set to false

Note:

Not all seeks operations on the stream will result in this function being called. PHP streams have read buffering enabled by default (see also stream_set_read_buffer()) and seeking may be done by merely moving the buffer pointer.

See Also

  • fseek() - Seeks on a file pointer

add a note add a note

User Contributed Notes 1 note

up
1
fb at tigermedia dot dk
10 years ago
Please notice that the return value of this function is a boolean but the return value of fseek is 0 for ok and -1 for failure.

Please use this implementation when working with files:

function stream_seek($offset, $whence) {
        if(0 === fseek($this->_handler, $offset, $whence)){
            return true;
        }
        return false;
}
To Top