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

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

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

其实php对gzip解压很简单,用内置的gzdecode函数就可以了,不过很可惜我配置了半天也无法支持gzdecode函数,所以只好变通一下:
代码如下:
  1. <br>if (!function_exists('gzdecode')) { <br> function gzdecode ($data) { <br> $flags = ord(substr($data, 3, 1)); <br> $headerlen = 10; <br> $extralen = 0; <br> $filenamelen = 0; <br> if ($flags & 4) { <br> $extralen = unpack('v' ,substr($data, 10, 2)); <br> $extralen = $extralen[1]; <br> $headerlen += 2 + $extralen; <br> } <br> if ($flags & 8) // Filename <br> $headerlen = strpos($data, chr(0), $headerlen) + 1; <br> if ($flags & 16) // Comment <br> $headerlen = strpos($data, chr(0), $headerlen) + 1; <br> if ($flags & 2) // CRC at end of file <br> $headerlen += 2; <br> $unpacked = @gzinflate(substr($data, $headerlen)); <br> if ($unpacked === FALSE) <br> $unpacked = $data; <br> return $unpacked; <br> } <br>} <br> <br>调用方法很简单: <br><u></u> 代码如下:<pre class="brush:php;toolbar:false layui-box layui-code-view layui-code-notepad"><ol class="layui-code-ol"><li><br>$f=@file_get_contents("http://www.bitsCN.com"); <br>echo gzdecode($f); </li></ol></pre>

人气教程排行