基于PHP CURL用法的深入分析


Posted in PHP onJune 09, 2013

如下所示:

<?php
header('Context-Type:text/html;charset:gb2312;');
$urls = array(
 'http://www.baidu.com/',
 'http://www.pconline.com.cn/',
 'http://www.163.com/'
);
$options = array(
 CURLOPT_RETURNTRANSFER=>1,
 CURLOPT_FOLLOWLOCATION=>1, 
 CURLOPT_HEADER => false, 
 CURLOPT_HTTPHEADER => array(
  'Accept'=>' text/html, application/xhtml+xml,',
  'Accept-Encoding'=>' gzip, deflate',
  'Accept-Language'=>' zh-CN',
  'Connection'=>' Keep-Alive', 
  'User-Agent'=>' Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)',
 ),
);
function curlMultiRequest($urls,$options=array()){
 $ch = array();
 $results = array();
 $mh = curl_multi_init();
 foreach($urls as $key=>$val){
  $ch[$key] = curl_init();
  if($options){
   curl_setopt_array($ch[$key],$options);
  }  
  curl_setopt($ch[$key],CURLOPT_URL,$val);
  curl_multi_add_handle($mh,$ch[$key]);
 } $running = null;
 do{
  curl_multi_exec($mh,$running);
 }while($running>0); 
 foreach($ch as $key=>$val){
  //$results[$key] = iconv('gb2312','utf-8',curl_multi_getcontent($val));
  $results[$key] = curl_multi_getcontent($val);
  curl_multi_remove_handle($mh,$val);
  curl_close($val);
 } 
 curl_multi_close($mh); 
 return $results;
}
$results = curlMultiRequest($urls,$options);
print_r($results);
?>
PHP 相关文章推荐
JAVA/JSP学习系列之七
Oct 09 PHP
php FPDF类库应用实现代码
Mar 20 PHP
php下利用curl判断远程文件是否存在的实现代码
Oct 08 PHP
如何用phpmyadmin设置mysql数据库用户的权限
Jan 09 PHP
php列出一个目录下的所有文件的代码
Oct 09 PHP
浅谈discuz密码加密的方式
May 22 PHP
PHP中array_slice函数用法实例详解
Nov 25 PHP
php使用PDO下exec()函数查询执行后受影响行数的方法
Mar 28 PHP
phpinfo无法显示的原因及解决办法
Feb 15 PHP
PHP时间函数使用详解
Mar 21 PHP
针对PHP开发安全问题的相关总结
Mar 22 PHP
Linux下安装Memcached服务器和客户端与PHP使用示例
Apr 15 PHP
探讨PHP使用eAccelerator的API开发详解
Jun 09 #PHP
windows环境下php配置memcache的具体操作步骤
Jun 09 #PHP
探讨捕获php错误信息方法的详解
Jun 09 #PHP
使用迭代器 遍历文件信息的详解
Jun 08 #PHP
PHP在不同页面间传递Json数据示例代码
Jun 08 #PHP
深入理解:XML与对象的序列化与反序列化
Jun 08 #PHP
探讨:使用XMLSerialize 序列化与反序列化
Jun 08 #PHP
You might like
phpword插件导出word文件时中文乱码问题处理方案
2014/08/19 PHP
php延迟静态绑定实例分析
2015/02/08 PHP
Windows2003下php5.4安装配置教程(Apache2.4)
2016/06/30 PHP
Zend Framework入门教程之Zend_View组件用法示例
2016/12/09 PHP
php实现文章评论系统
2019/02/18 PHP
javascript 密码强度验证规则、打分、验证(给出前端代码,后端代码可根据强度规则翻译)
2010/05/18 Javascript
js中各种类型的变量在if条件中是true还是false
2014/07/16 Javascript
JavaScript匿名函数与委托使用示例
2014/07/22 Javascript
angularjs基础教程
2014/12/25 Javascript
谈谈js中的prototype及prototype属性解释和常用方法
2015/11/25 Javascript
理解javascript模块化
2016/03/28 Javascript
jQuery简单实现点击文本框复制内容到剪贴板上的方法
2016/08/01 Javascript
Bootstrap CSS布局之图像
2016/12/17 Javascript
js获取元素下的第一级子元素的方法(推荐)
2017/03/05 Javascript
详谈js遍历集合(Array,Map,Set)
2017/04/06 Javascript
关于jQuery中fade(),show()起始位置的一点小发现
2017/04/25 jQuery
webpack学习教程之publicPath路径问题详解
2017/06/17 Javascript
浅谈Vuex@2.3.0 中的 state 支持函数申明
2017/11/22 Javascript
vue cli构建的项目中请求代理与项目打包问题
2018/02/26 Javascript
vue实现多组关键词对应高亮显示功能
2019/07/25 Javascript
[01:03:22]LGD vs OG 2018国际邀请赛淘汰赛BO3 第一场 8.25
2018/08/29 DOTA
Python中标准库OS的常用方法总结大全
2017/07/19 Python
Python字符串和字典相关操作的实例详解
2017/09/23 Python
解决Python2.7读写文件中的中文乱码问题
2018/04/12 Python
selenium+python实现自动登录脚本
2018/04/22 Python
在CMD命令行中运行python脚本的方法
2018/05/12 Python
迷你分体式空调:SoGoodToBuy
2018/08/07 全球购物
英国最大的汽车配件在线商店:Euro Car Parts
2019/09/30 全球购物
KOHLER科勒美国官网:国际著名卫浴橱柜领先品牌
2020/06/27 全球购物
Perfume’s Club澳大利亚官网:西班牙领先的在线美容店
2021/02/01 全球购物
办公室文员工作自我评价
2013/12/01 职场文书
自主招生自荐信格式
2013/12/03 职场文书
房地产融资计划书
2014/01/10 职场文书
计算机多媒体专业自荐信
2014/07/04 职场文书
贷款担保书
2015/01/20 职场文书
OpenCV-Python 实现两张图片自动拼接成全景图
2021/06/11 Python