来源:转载 发布时间:2018-11-21 11:45:36 阅读量:644
本篇文章给大家带来的内容是关于php使用curl模拟多线程发送请求的代码示例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
每个PHP文件的执行是单线程的,但是php本身也可以用一些别的技术实现多线程并发比如用php-fpm进程,这里用curl模拟多线程发送请求。php的curl多线程是通过不断调用curl_multi_exec来获取内容,这里举一个demo来模拟一次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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
|
我再服务器上建立一起请求的php页面命名为test.php,内容如下
1 2 |
|
表示等待十秒后数据下面语句。
然后我在命令行执行该程序结果如下:
上面代码中通过循环$curl_Arr数组来调用curl_multi_getcontent来查询是否有数据。有数据就输出并删除元素,直到$curl_Arr数组元素个数为0。
该模拟多线程实现是通过使用curl的curl_multi系列函数能实现此功能的。至于该系列函数使用介绍,百度一搜一大把。这里就不做说明了。