本篇文章给大家分享的是有关如何在PHP中利用curl批量请求,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
具体如下:
<?php $ch = array(); $res = array(); $conn = array(); $urls = array( 'baidu' => "http://www.baidu.com/", 'cheyun' => "http://auto.jrj.com.cn/", 'w3c' => "http://www.w3cschool.cc/", ); // 创建批处理cURL句柄 $mh = curl_multi_init(); foreach ($urls as $i => $url) { // 创建一对cURL资源 $conn[$i] = curl_init(); // 设置URL和相应的选项 curl_setopt($conn[$i], CURLOPT_URL, $url); curl_setopt($conn[$i], CURLOPT_HEADER, 0); curl_setopt($conn[$i], CURLOPT_RETURNTRANSFER, 1); curl_setopt($conn[$i], CURLOPT_TIMEOUT, 10); //302跳转 curl_setopt($conn[$i], CURLOPT_FOLLOWLOCATION, 1); // 增加句柄 curl_multi_add_handle($mh, $conn[$i]); } $active = null; //防卡死写法:执行批处理句柄 do { $mrc = curl_multi_exec($mh, $active); } while ($mrc == CURLM_CALL_MULTI_PERFORM); while ($active && $mrc == CURLM_OK) { if (curl_multi_select($mh) != -1) { do { $mrc = curl_multi_exec($mh, $active); } while ($mrc == CURLM_CALL_MULTI_PERFORM); } } foreach ($urls as $i => $url) { //获取当前解析的cURL的相关传输信息 $info = curl_multi_info_read($mh); //获取请求头信息 $heards = curl_getinfo($conn[$i]); var_dump($heards); //获取输出的文本流 $res[$i] = curl_multi_getcontent($conn[$i]); // 移除curl批处理句柄资源中的某个句柄资源 curl_multi_remove_handle($mh, $conn[$i]); //关闭cURL会话 curl_close($conn[$i]); } //关闭全部句柄 curl_multi_close($mh); //var_dump($res);
以上就是如何在PHP中利用curl批量请求,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。
网站栏目:如何在PHP中利用curl批量请求-创新互联
本文来源:https://www.cdcxhl.com/article0/dhpcio.html
成都网站建设公司_创新互联,为您提供动态网站、定制网站、网站内链、网站收录、全网营销推广、自适应网站
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联