在php中卷曲连接重用

时间:2013-11-15 10:25:39

标签: php curl

我在我的php应用程序中使用curl。它看起来像那样(简化):

$handle = curl_init();
curl_exec($handle);
curl_close($handle);

如[{3}}章节所述,

  

对同一主机使用相同简单句柄的后续请求可能只能使用已打开的连接!这大大减少了网络影响。

那么,它是否适用于此代码?是否会保存连接并curl_init()使用现有连接?如果是的话 - 它们存储了多长时间?

1 个答案:

答案 0 :(得分:2)

我自己没有对此进行过测试,但我认为它应该如何运作:

您创建了一个curl实例:

$handle = curl_init();

然后设置选项,例如URL,方法(post或get)和查询字符串:

curl_setopt($handle, CURLOPT_URL, "http://stackoverflow.com");

执行请求:

curl_exec($handle); // execute the request

更改您的选项,例如更改网址:

curl_setopt($handle, CURLOPT_URL, "http://stackoverflow.com/test/");

再次执行请求,它应该能够重用已经打开的连接:

curl_exec($handle);

您可以使用相同的curl实例多次执行此操作,并且如果可能,它将重用连接。

最后关闭连接并在完成后删除curl实例:

curl_close($handle);