如果$ ch没准备好,curl_multi_getcontent($ ch)会返回什么?

时间:2010-09-11 00:07:44

标签: php curl

如果$ ch在PHP中没有准备好,curl_multi_getcontent($ ch)会返回什么?

1 个答案:

答案 0 :(得分:5)

您提出的问题的答案是

  • 如果尚未收到回复,curl_multi_getcontent会返回NULL
  • 如果传输正在进行中,curl_multi_getcontent将返回到目前为止检索到的数据。


显然,您要问的问题是:如何知道curl_multi...操作何时完成?

答案是你没有使用curl_multi_getcontent。相反,重复调用curl_multi_exec,直到第二个参数(仍在处理其传输的子句柄的数量)变为0. This blog post,从手册中的注释,显示一些工作代码。您可能还想查看curl_multi_select,它将阻止,直到连接上有某些活动为止。这可能会导致拨打curl_multi_exec电话的周期减少:请参阅curl_multi_exec manual page上的示例#1。

如果您使用的是5.2.0或更高版本,则可以使用curl_multi_info_read获取各个连接的状态,而不是等待所有连接。 (manual)