当前位置:Gxlcms > PHP教程 > gezipuphp对gzip文件或者字符串解压实例参考

gezipuphp对gzip文件或者字符串解压实例参考

时间:2021-07-01 10:21:17 帮助过:4人阅读

其实php对gzip解压很简单,用内置的gzdecode函数就可以了,不过很可惜我配置了半天也无法支持gzdecode函数,所以只好变通一下:

代码如下:


if (!function_exists('gzdecode')) {
function gzdecode ($data) {
$flags = ord(substr($data, 3, 1));
$headerlen = 10;
$extralen = 0;
$filenamelen = 0;
if ($flags & 4) {
$extralen = unpack('v' ,substr($data, 10, 2));
$extralen = $extralen[1];
$headerlen += 2 + $extralen;
}
if ($flags & 8) // Filename
$headerlen = strpos($data, chr(0), $headerlen) + 1;
if ($flags & 16) // Comment
$headerlen = strpos($data, chr(0), $headerlen) + 1;
if ($flags & 2) // CRC at end of file
$headerlen += 2;
$unpacked = @gzinflate(substr($data, $headerlen));
if ($unpacked === FALSE)
$unpacked = $data;
return $unpacked;
}
}


调用方法很简单:

代码如下:


$f=@file_get_contents("http://www.gxlcms.com");
echo gzdecode($f);

以上就介绍了gezipu php对gzip文件或者字符串解压实例参考,包括了gezipu方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

人气教程排行