《PHP应用:php读取远程gzip压缩网页的方法》要点:
本文介绍了PHP应用:php读取远程gzip压缩网页的方法,希望对您有用。如果有疑问,可以联系我们。
PHP编程本日在调取一家商城的页面信息时候,使用file_get_contents抑或curl:
代码如下:
$url = 'http://www.xxx.com/21/?type=23′;
$temp = file_get_contents($url);
echo $temp;
PHP编程
都得到一片乱码,查看了许多内容,包含页面的header信息,发现原来页面使用了.
PHP编程
PHP编程
PHP编程
PHP编程类似的信息,即Content-Encoding为gzip,即该站点开启了gzip压缩.这里的办理方案有多种,当然如果你使用file_get_contents的话,可以这样修改:
PHP编程
代码如下:
file_get_contents("compress.zlib://".$url);
PHP编程或者使用curl来实现:
代码如下:
function curl_get($url, $gzip=false){
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10);
if($gzip) curl_setopt($curl, CURLOPT_ENCODING, "gzip"); // 关键在这里
$content = curl_exec($curl);
curl_close($curl);
return $content;
}
PHP编程同时,参考手册上面的解法,还可以对保留gzip类型的字符串进行处理如下:
代码以下:
function gzdecode($data){
$g=tempnam(‘/tmp','ff');
@file_put_contents($g,$data);
ob_start();
readgzfile($g);
$d=ob_get_clean();
return $d;
}
《PHP应用:php读取远程gzip压缩网页的方法》是否对您有启发,欢迎查看更多与《PHP应用:php读取远程gzip压缩网页的方法》相关教程,学精学透。维易PHP学院为您提供精彩教程。
转载请注明本页网址:
http://www.vephp.com/jiaocheng/13157.html