PHP中的异步请求

时间:2011-03-28 09:51:23

标签: php javascript http asynchronous request

我需要为多个API生成请求,从中获取响应,然后生成报告。

类似的东西:

foreach($api_array as $api){
    echo $api;

    $responce = file_get_contents($api);

    if($responce) 
        echo 'ok <br/>';
    else 
        echo 'fail <br/>';
}

很明显,当一个接一个地运行时,这需要花费很多时间等待每个服务的响应。

这可以异步完成,就像在JavaScript中一样吗?非常感谢!

2 个答案:

答案 0 :(得分:2)

您可以使用curl_multi

答案 1 :(得分:0)

是的,您可以使用curl_multi并行执行此操作。 您还可以使用回调来获取此示例中的响应 http://curl.haxx.se/libcurl/php/examples/callbacks.html

另请参阅curl_multi http://php.net/manual/en/function.curl-multi-init.php 2