curl解压gzip页面gzcompress内容

$headers = array(
//"Content-type:application/json;charset='utf-8'",
"Cache-Control:no-cache",
"Pragma:no-cache",
//"accept-charset:utf-8",
"Accept-Encoding:gzip",
"User-Agent:Dalvik/2.1.0 (Linux; U; Android 5.1.1;Build/LMY47V)",
"Host:www.domain.cn",
//'Transfer-Encoding:chunked', 压缩不能用这项
//"Content-Type:application/x-www-form-urlencoded",
//"Connection:Keep-Alive",
);

/*
* 可写文件
$sourceFile="tmp.txt";
$fp = fopen($sourceFile, "w");
*/

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_NOBODY, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_ENCODING, 'gzip'); //curl解压gzip页面内容
curl_setopt($curl, CURLOPT_FORBID_REUSE, true);
curl_setopt($curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($curl, CURLOPT_HTTPGET, true);
//curl_setopt($curl, CURLOPT_FILE, $fp);
$data = curl_exec($curl);
curl_close($curl);

//file_put_contents('tmpdata.txt',$data);
echo bin2hex($data); //可查看下16进制
$ret = gzuncompress($data);

print_r(json_decode($ret,true)
posted @ 2017-11-17 18:25  jking10  阅读(3321)  评论(0编辑  收藏  举报