php curl 多线程
$offmh = curl_multi_init(); //开启curl多线程
foreach ($offer as $i => $url) {$conn[$i] = curl_init($url); //开启curlcurl_setopt($conn[$i], CURLOPT_RETURNTRANSFER, true);// 执行后不直接打印出来curl_setopt($conn[$i], CURLOPT_POST, true); //设置请求方式为postcurl_setopt($conn[$i], CURLOPT_POSTFIELDS,$post_data);//post的变量curl_setopt($conn[$i], CURLOPT_HEADER ,false); // 请求头,可以传数组curl_setopt($conn[$i], CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)"); //在HTTP请求中包含一个”user-agent”头的字符串。 curl_setopt($conn[$i], CURLOPT_SSL_VERIFYPEER, false); // 跳过证书检查curl_setopt($conn[$i], CURLOPT_SSL_VERIFYHOST, false); // 不从证书中检查SSL加密算法是否存在curl_setopt($conn[$i], CURLOPT_CONNECTTIMEOUT,10); //标识如果服务器10秒内没有响应,脚本就会断开连接;curl_multi_add_handle ($offmh,$conn[$i]); //创建n个cURL句柄,把它们加到批处理句柄,然后并行地运行它们。
}
// 执行批处理句柄
$active = null;
do{$mrc = curl_multi_exec($offmh,$active);//当无数据,active=true
} while ($mrc == CURLM_CALL_MULTI_PERFORM);//当正在接受数据时
while ($active && $mrc == CURLM_OK) {//当无数据时或请求暂停时,active=truedo{$mrc = curl_multi_exec($offmh, $active);}while($mrc == CURLM_CALL_MULTI_PERFORM);
}
foreach ($offer as $k => $url) {$dooffer = curl_multi_getcontent($conn[$k]);//获得返回信息//处理数据curl_close($conn[$k]);//关闭语柄curl_multi_remove_handle($offmh, $conn[$k]);//释放资源
}
curl_multi_close($offmh); //关闭curl多线程
php curl 多线程相关推荐
- 利用curl 多线程 模拟 并发的详解
来源:http://www.jb51.net/article/38492.htm 首先,先了解下 php中的curl多线程函数: 复制代码代码如下: # curl_multi_add_handle # ...
- PHP Curl多线程原理实例详解
来源:http://www.jb51.net/article/42826.htm 给各位介绍一下Curl多线程实例与原理.不对之处请指教 相信许多人对php手册中语焉不详的curl_multi一族的函 ...
- PHP CURL 多线程 GET/POST 类
来源:http://www.oschina.net/code/snippet_1475115_44902 <?php /************************************* ...
- php curl 防止采集,php多线程采集网页的解决办法 curl多线程采集
一直在使用thinkphp做项目,同样也经常进行采集!而对于物联卡来说,就更要大量的采集运营商提供的API信息,平时使用PHP单线程curl采集多个网页的时候速度特别慢,尤其是采集几十个接口的时候(电 ...
- php 多线程上传,PHP CURL 多线程操作代码实例
/* * Curl 多线程类 * 使用方法: * ======================== $urls = array("http://baidu.com", " ...
- php curl 模拟多线程,php利用curl 多线程 模拟 并发的详解
php利用curl 多线程 模拟 并发的详解 发布于 2014-12-07 10:17:25 | 265 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypert ...
- PHP Curl 多线程实现
2019独角兽企业重金招聘Python工程师标准>>> 使用方法: $urls = array("http://baidu.com", "http:// ...
- Curl多线程|CurlMulti
今天发现了一个多线程的curl工具,竟然还是国内自己开发的,地址在这里:http://blog.phpdr.net/curl多线程.html,目前还在持续更新,所以打算试试: 工作中经常需要采集一些内 ...
- curl多线程采集----评论
文章<curl多线程采集>的讨论如下 william在 2016 年 3 月 20 日下午 3:21 说道: 我想抓取http://china.nba.com/playerindex/上面 ...
最新文章
- 聊一聊 Java 服务端中的乱象
- 2021-03-15 深入理解SLAM技术【1】 基础知识
- python:array,mat,tolist,list
- [源码学习]调试Razor从哪里开始
- 使用Java的BlockingQueue实现生产者-消费者
- Web前端行业普遍底薪20K,还有项目提成,你达到了么?教你这一招
- position之属性
- android经典动态壁纸,android中自定义动态壁纸
- 格雷码与二进制转换的verilog实现
- C语言基础之排列组合数字
- python打开csv忽略错误_在python中读取错误的格式csv
- yarn和npm常用基本命令安装和卸载
- 图像处理一大神器:图像去噪
- 横河便携式pH计PH72-21-E-AA
- Unity(设置射线检测对象)
- 数独博士1.5_数独B
- 01.the window
- 局域网内部管理行为应该如何控制?
- python在工程管理专业的应用案例_Python课程中实际项目案例分析
- DelayQueue使用示例