And when retrieving mod_deflate gzip'ed content and using gzinflate() to decode the data, be sure to strip the first 11 chars from the retrieved content.
$dec = gzinflate(substr($enc,11));
gzinflate
(PHP 4 >= 4.0.4, PHP 5)
gzinflate — Descomprime una cadena comprimida
Descripción
string gzinflate
( string $datos
[, int $longitud
] )
Está función descomprime una cadena comprimida.
Lista de parámetros
- datos
-
Los datos comprimidos por gzdeflate().
- longitud
-
La longitud máxima de los datos a descodificar o descomprimir.
Valores retornados
The original uncompressed data or FALSE on error.
La función regresará un error si los datos ya sin comprimir son mayor a 32768 veces la longitud de los dados en el parámetro datos o mas que el parámetro opcional longitud .
Ejemplos
Example #1 Ejemplo de gzinflate()
<?php
$compressed = gzdeflate('Compress me', 9);
$uncompressed = gzinflate($compressed);
echo $uncompressed;
?>
gzinflate
John
12-Jun-2008 10:22
12-Jun-2008 10:22
patatraboum at free dot fr
24-Aug-2007 10:57
24-Aug-2007 10:57
Some gz string strip header and return inflated
It actualy processes some first member of the gz
See rfc1952 at http://www.faqs.org/rfcs/rfc1952.html for more details and improvment as gzdecode
<?
function gzBody($gzData){
if(substr($gzData,0,3)=="\x1f\x8b\x08"){
$i=10;
$flg=ord(substr($gzData,3,1));
if($flg>0){
if($flg&4){
list($xlen)=unpack('v',substr($gzData,$i,2));
$i=$i+2+$xlen;
}
if($flg&8) $i=strpos($gzData,"\0",$i)+1;
if($flg&16) $i=strpos($gzData,"\0",$i)+1;
if($flg&2) $i=$i+2;
}
return gzinflate(substr($gzData,$i,-8));
}
else return false;
}
?>
spikeles_ at hotmail dot com
01-Nov-2006 08:12
01-Nov-2006 08:12
This can be used to inflate streams compressed by the Java class java.util.zip.Deflater but you must strip the first 2 bytes off it. ( much like the above comment )
$result = gzinflate(substr($compressedData, 2))
boris at gamate dot com
08-Jul-2003 05:49
08-Jul-2003 05:49
When retrieving mod_gzip'ed content and using gzinflate() to decode the data, be sure to strip the first 10 chars from the retrieved content.
$dec = gzinflate(substr($enc,10));
