PHP: gzuncompress - Manual

downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

gzwrite gztell

Last updated: Fri, 26 Jan 2007

view this page in

# gzuncompress

(PHP 4 >= 4.0.1, PHP 5)

gzuncompress -- Распаковывает строку

## Описание

string gzuncompress ( string data [, int length] )

Распаковывает строку.

## Список параметров

`data`

  Данные, сжатые функцией gzcompress().

`length`

  Максимальная длина данных для распаковки.

## Возвращаемые значения

Распакованные данные или `FALSE` в случае ошибки.

Функция сообщит об ошибке также в случае, когда распакованные данные длиннее в более, чем 32768 или `length` раз сжатых.

## Смотрите также

gzcompress()
gzinflate()
gzdeflate()
gzencode()

add a note User Contributed Notes
gzuncompress
emanuele at fondani dot it
25-Nov-2006 03:21
`Note that the manual states that the input parameter must be a string compressed with gzcompress(), so it is not guaranteed that it will compress ANY zlib compressed string.
I realized this while decompressing some compressed string in a pdf file. The gzuncompress() function produces a data error, but the string can be successfully decompressed with other zlib decompressors.
More info here:
http://bugs.php.net/?id=39616`
chappy at citromail dot hu
13-Apr-2006 07:47
`Reading an ID3v2.3+ tag it is versy useful, because these tag's frames might be compressed. Zlib compressed frame layout (ID3v2.3):
Descriptior Size
-------------------
Frameheader:
Frame id: 4 bytes
Frame size (full frame size - frameheader size): 4 bytes
Frame flags: 2 bytes
The 2nd byte's 7th bit must be 1 (e.g.: %1xy00000)
Frame content decrompessed size: 4 bytes
--------------------
Framecontent:
Compressed string described in 'frame size'
<?php
$frame="[read from a mp3 file]";
$frame_id=substr($frame,0,4);
/*....*/
$cs=substr($frame,10,4);
$checksize=$cs[3]*16777216+$cs[2]*65536+$cs[1]*256+$cs[0];
$content=substr($frame,14,$contentsize);
$content=gzuncompress($content);
if(strlen($content)!=$checksize){
echo 'Error whil uncrompessing frame data<br>';
}
echo $content;
?>`
add a note
gzwrite gztell

Last updated: Fri, 26 Jan 2007
show source | credits | stats | sitemap | contact | advertising | mirror sites
Copyright © 2001-2007 The PHP Group
All rights reserved.
This mirror generously provided by: Yahoo! Inc.
Last updated: Sat Mar 10 10:36:09 2007 PST