|
gzseek
Seek on a gz-file pointer
(PHP 4, PHP 5)
Sets the file position indicator for the given file pointer to the
given offset byte into the file stream. Equivalent to calling (in C)
If the file is opened for reading, this function is emulated but can be extremely slow. If the file is opened for writing, only forward seeks are supported; gzseek() then compresses a sequence of zeroes up to the new starting position. Parameters
Return ValuesUpon success, returns 0; otherwise, returns -1. Note that seeking past EOF is not considered an error. ExamplesExample 2733. gzseek() example<?php
See Also
Code Examples / Notes » gzseekdperham
PHP/4.3.9 contrary to the notes, gzseek() returns -1 if I try to seek past the end of the file. here is a function that will return the last seekable position, and put the file pointer there. /** sets the file pointer at the end of the file * and returns the number of bytes in the file. */ function gzend($fh) { $d = 1<<14; $eof = $d; while ( gzseek($fh, $eof) == 0 ) $eof += $d; while ( $d > 1 ) { $d >>= 1; $eof += $d * (gzseek($fh, $eof)? -1 : 1); } return $eof; } |