您的位置:首页 > 编程学习 > > 正文

phpcurl请求能在日志里记录吗(php使用curl模拟多线程实现批处理功能示例)

更多 时间:2022-01-18 01:06:08 类别:编程学习 浏览量:2735

phpcurl请求能在日志里记录吗

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

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

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

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

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • <?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程序设计有所帮助。

    原文链接:https://www.cnblogs.com/xshang/p/3735652.html

    您可能感兴趣