ok so this function returns the gz file pointer as the uncompressed data byte length so if you are trying to put something in to specific size gzip files it won't work.
Example:
<?
//some_file.sql filesize = 2,048,000 bytes
$text_fp=fopen('some_file.sql','r');
$gz_fp=gzopen('some_file.sql.gz','wb9');
while(!feof($text_fp)){
gzwrite($gz_fp,fread($text_fp,655360));
}
fclose($text_fp);
echo "gztell = ".gztell($gz_fp)."<BR>\n";
gzclose($gz_fp);
echo "filesize = ".filesize('some_file.sql.gz')."<BR>\n";
?>
Output:
gztell = 2048000
filesize = 249264
I will report this as a bug but post a note here for now
gztell
(PHP 4, PHP 5)
gztell — gz ファイルポインタの読み込み/書き込み位置を返します
説明
int gztell
( resource $zp
)
与えられたファイルポインタが指す位置、つまり、 圧縮されていないファイルストリームにおけるオフセット値を返します。
返り値
ファイルポインタの位置、もしくはエラーが発生した場合 FALSE
gztell
Steve Ramage
19-Dec-2006 03:09
19-Dec-2006 03:09