/**
* 多线程请求链接
* 来自官方参考例程修改
*
* @param array $urlArr
* @author Xinwen Mao
*/
public static function curl_multi($urlArr) {
// 创建批处理cURL句柄
$mh = curl_multi_init();
for ($i = 0; $i < count($urlArr); $i++) {
// 创建一对cURL资源
$chs [$i] = curl_init();
// 设置URL和相应的选项
curl_setopt($chs [$i], CURLOPT_URL, $urlArr [$i]);
curl_setopt($chs [$i], CURLOPT_HEADER, 0);
curl_setopt($chs [$i], CURLOPT_RETURNTRANSFER, 1); // 不输出返回内容
// curl_setopt($chs [$i], CURLOPT_PROXY, '10.211.55.3:8888'); // 代理调试
// 增加句柄
curl_multi_add_handle($mh, $chs [$i]);
}
$active = null;
do {
curl_multi_exec($mh, $active);
} while ($active > 0);
// 关闭全部句柄
foreach ($chs as $ch) {
curl_multi_remove_handle($mh, $ch);
}
curl_multi_close($mh);
}
PHP多线程异步请求HTTP
最新推荐文章于 2023-12-20 19:32:36 发布