gpt4 book ai didi

PHP 并行 curl 请求

转载 作者:IT王子 更新时间:2023-10-29 01:00:53 26 4
gpt4 key购买 nike

我正在做一个简单的应用程序,它从 15 个不同的 URL 读取 json 数据。我有一个特殊的需要,我需要在服务器上执行此操作。我正在使用 file_get_contents($url)

因为我正在使用 file_get_contents($url)。我写了一个简单的脚本,是吗:

$websites = array(
$url1,
$url2,
$url3,
...
$url15
);

foreach ($websites as $website) {
$data[] = file_get_contents($website);
}

事实证明它非常慢,因为它会等待第一个请求然后再执行下一个请求。

最佳答案

如果你的意思是多 curl ,那么这样的事情可能会有所帮助:


$nodes = array($url1, $url2, $url3);
$node_count = count($nodes);

$curl_arr = array();
$master = curl_multi_init();

for($i = 0; $i < $node_count; $i++)
{
$url =$nodes[$i];
$curl_arr[$i] = curl_init($url);
curl_setopt($curl_arr[$i], CURLOPT_RETURNTRANSFER, true);
curl_multi_add_handle($master, $curl_arr[$i]);
}

do {
curl_multi_exec($master,$running);
} while($running > 0);


for($i = 0; $i < $node_count; $i++)
{
$results[] = curl_multi_getcontent ( $curl_arr[$i] );
}
print_r($results);

希望对你有所帮助

关于PHP 并行 curl 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9308779/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com