php使用curl模拟多线程实现批处理功能示例


Posted in PHP onJuly 25, 2019

本文实例讲述了php使用curl模拟多线程实现批处理功能。分享给大家供大家参考,具体如下:

php模拟多线程用到curl库,这个库很强大,可以做好多事,比如模拟登陆,文件上传/下载,数据采集等。

下面是我的代码,很简单,有些还功能还不会用。

<?php
$node_urls=array('http://www.baidu.com','http://www.google.com.hk');
$ch=array();
$mh=curl_multi_init();
$ch[0]=curl_init($node_urls[0]);
$ch[1]=curl_init($node_urls[1]);
for($i=0;$i<2;$i++)
{
curl_setopt($ch[$i],CURLOPT_RETURNTRANSFER,1);
curl_multi_add_handle($mh,$ch[$i]);
}
$running=NULL;
do{
  usleep(10000);
  curl_multi_exec($mh,$running);
}while($running>0);
$res=array();
for($j=0;$j<2;$j++)
{
  $res[$j]=curl_multi_getcontent($ch[$j]);
}
for($k=0;$k<2;$k++)
{
  curl_multi_remove_handle($mh,$ch[$k]);
}
curl_multi_close($mh);
print_r($res);
?>

这段代码就是并行爬取百度和谷歌的代码,以后再慢慢完善。

还有好多事要做。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP $_SERVER详解
Jan 16 PHP
PHP图片验证码制作实现分享(全)
May 10 PHP
通过5个php实例细致说明传值与传引用的区别
Aug 08 PHP
深入解析php中的foreach函数
Aug 31 PHP
php Calender(日历)代码分享
Jan 03 PHP
php中的四舍五入函数代码(floor函数、ceil函数、round与intval)
Jul 14 PHP
WordPress中缩略图的使用以及相关技巧
Nov 24 PHP
ThinkPHP中where()使用方法详解
Apr 19 PHP
PHP简单检测网址是否能够正常打开的方法
Sep 04 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
Apr 19 PHP
弹出模态框modal的实现方法及实例
Sep 19 PHP
PHP中一个有趣的preg_replace函数详解
Aug 15 PHP
yii框架使用分页的方法分析
Jul 25 #PHP
php实现的生成排列算法示例
Jul 25 #PHP
Yii框架中使用PHPExcel的方法分析
Jul 25 #PHP
PHP保留两位小数的几种方法
Jul 24 #PHP
Yii框架使用PHPExcel导出Excel文件的方法分析【改进版】
Jul 24 #PHP
Yii Framework框架使用PHPExcel组件的方法示例
Jul 24 #PHP
PHP+Apache实现二级域名之间共享cookie的方法
Jul 24 #PHP
You might like
PHP伪静态页面函数附使用方法
2008/06/20 PHP
处理单名多值表单的详解
2013/06/08 PHP
PHP Yaf框架的简单安装使用教程(推荐)
2016/06/08 PHP
php输出形式实例整理
2020/05/05 PHP
jQuery EasyUI API 中文文档 - Form表单
2011/10/06 Javascript
使用jquery实现div的tab切换实例代码
2013/05/27 Javascript
通用javascript代码判断版本号是否在版本范围之间
2015/11/29 Javascript
在 Express 中使用模板引擎
2015/12/10 Javascript
jQuery如何封装输入框插件
2016/08/19 Javascript
浅谈JavaScript 数据属性和访问器属性
2016/09/01 Javascript
Angular 2.0+ 的数据绑定的实现示例
2017/08/09 Javascript
浅谈Vue.js应用的四种AJAX请求数据模式
2017/08/30 Javascript
JavaScript寄生组合式继承实例详解
2018/01/06 Javascript
深入理解 webpack 文件打包机制(小结)
2018/01/08 Javascript
React Native 混合开发多入口加载方式详解
2019/09/23 Javascript
微信小程序实现拨打电话功能的示例代码
2020/06/28 Javascript
Javascript表单序列化原理及实现代码详解
2020/10/30 Javascript
[46:20]TFT vs Secret Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
python2.7 mayavi 安装图文教程(推荐)
2017/06/22 Python
Python开发的HTTP库requests详解
2017/08/29 Python
python实现发送邮件功能代码
2017/12/14 Python
python实现屏保计时器的示例代码
2018/08/08 Python
解决python3 安装完Pycurl在import pycurl时报错的问题
2018/10/15 Python
在Pandas中DataFrame数据合并,连接(concat,merge,join)的实例
2019/01/29 Python
Python三元运算与lambda表达式实例解析
2019/11/30 Python
python如何操作mysql
2020/08/17 Python
以设计师精品品质提供快速时尚:PopJulia
2018/01/09 全球购物
Ajax请求总共有多少种Callback
2016/07/17 面试题
工商学院毕业生自荐信
2013/11/12 职场文书
餐厅筹备计划书
2014/04/25 职场文书
《她是我的朋友》教学反思
2014/04/26 职场文书
公司合作意向书范文
2014/07/30 职场文书
敬老月活动总结
2014/08/28 职场文书
穆斯林的葬礼读书笔记
2015/06/26 职场文书
css3实现背景图片半透明内容不透明的方法示例
2021/04/13 HTML / CSS
详解OpenCV曝光融合
2022/04/29 Python