解析PHP中的file_get_contents获取远程页面乱码的问题


Posted in PHP onJune 25, 2013

PHP的file_get_contents获取远程页面内容,如果是gzip编码过的,返回的字符串就是编码后的乱码
1、解决方法,找个ungzip的函数来转换下
2、给你的url加个前缀,这样调用
$content = file_get_contents("compress.zlib://".$url);
无论页面是否经过gzip压缩,上述代码都可以正常工作!
使用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 相关文章推荐
利用php来自动调用不同服务器上的flash
Oct 09 PHP
PHP的ASP防火墙
Oct 09 PHP
用PHP实现图象锐化代码
Jun 14 PHP
PHP session有效期问题
Apr 26 PHP
PHP 编写的 25个游戏脚本
May 11 PHP
深入理解PHP几个算法:PHP冒泡、PHP二分法、PHP求素数、PHP乘法表
Jun 06 PHP
使用openssl实现rsa非对称加密算法示例
Jan 24 PHP
php使用pack处理二进制文件的方法
Jul 03 PHP
php中socket的用法详解
Oct 24 PHP
php通过rmdir删除目录的简单用法
Mar 18 PHP
支持汉转拼和拼音分词的PHP中文工具类ChineseUtil
Feb 23 PHP
PHP+ajax实现获取新闻数据简单示例
May 08 PHP
深入file_get_contents函数抓取内容失败的原因分析
Jun 25 #PHP
提升PHP性能的21种方法介绍
Jun 25 #PHP
解析如何通过PHP函数获取当前运行的环境 来进行判断执行逻辑(小技巧)
Jun 25 #PHP
解析php取整的几种方式
Jun 25 #PHP
关于PHP内存溢出问题的解决方法
Jun 25 #PHP
关于PHP session 存储方式的详细介绍
Jun 25 #PHP
基于php使用memcache存储session的详解
Jun 25 #PHP
You might like
this和执行上下文实现代码
2010/07/01 Javascript
js解析json读取List中的实体对象示例
2014/03/11 Javascript
JQEasy-ui在IE9以下版本中二次加载的问题分析及处理方法
2014/06/23 Javascript
14款NodeJS Web框架推荐
2014/07/11 NodeJs
详解js图片轮播效果实现原理
2015/12/17 Javascript
浅析JavaScript中命名空间namespace模式
2016/06/22 Javascript
bootstrap table之通用方法( 时间控件,导出,动态下拉框, 表单验证 ,选中与获取信息)代码分享
2017/01/24 Javascript
Bootstrap里的文件分别代表什么意思及其引用方法
2017/05/01 Javascript
详解webpack自动生成html页面
2017/06/29 Javascript
vue利用better-scroll实现轮播图与页面滚动详解
2017/10/20 Javascript
Angular利用内容投射向组件输入ngForOf模板的方法
2018/03/05 Javascript
解决Vue.js由于延时显示了{{message}}引用界面的问题
2018/08/25 Javascript
小程序云开发初探(小结)
2018/10/24 Javascript
vue2.0 实现富文本编辑器功能
2019/05/26 Javascript
Vue3.0数据响应式原理详解
2019/10/09 Javascript
[04:16]DOTA2全国高校联赛16强抽签
2018/05/02 DOTA
Python3 伪装浏览器的方法示例
2017/11/23 Python
使用Python开发个京东上抢口罩的小实例(仅作技术研究学习使用)
2020/03/10 Python
python对XML文件的操作实现代码
2020/03/27 Python
python collections模块的使用
2020/10/16 Python
Canvas与Image互相转换示例代码
2013/08/09 HTML / CSS
澳大利亚最大的女装零售商:Millers
2017/09/10 全球购物
德国在线购买葡萄酒网站:Geile Weine
2019/09/24 全球购物
金士达面试非笔试
2012/03/14 面试题
服装设计专业自荐书范文
2013/12/30 职场文书
《蜗牛》教学反思
2014/02/18 职场文书
平面设计求职信
2014/03/10 职场文书
关于雷锋的演讲稿
2014/05/10 职场文书
安全横幅标语
2014/06/09 职场文书
房屋租赁协议书(标准版)
2014/10/02 职场文书
八一建军节慰问信
2015/02/14 职场文书
听证会主持词
2015/07/03 职场文书
咖啡厅里的创业计划书
2019/08/21 职场文书
再次探讨go实现无限 buffer 的 channel方法
2021/06/13 Golang
Java用自带的Image IO给图片添加水印
2021/06/15 Java/Android
nginx七层负载均衡配置详解
2022/07/15 Servers