是否可以一起使用curl_multi_getcontent和CURLOPT_WRITEFUNCTION?

时间:2015-04-22 06:01:43

标签: php curl asynchronous callback curl-multi

我有一个异步的curl抓取工具,在没有启用CURLOPT_WRITEFUNCTION的情况下运行良好。

我试图通过停止超过1mb的任何下载来限制使用CURLOPT_WRITEFUCNTION下载的数据量。

我遇到的问题是curl_multi_getcontent($done['handle'])在使用CURLOPT_WRITEFUCNTION时没有返回任何数据。

我知道我可以使用CURLOPT_WRITEFUCNTION功能中的数据,但如果curl_multi_getcontent($done['handle'])继续执行该功能,它会使事情变得更容易CURLOPT_WRITEFUCNTION

是否可以一起使用curl_multi_getcontent和CURLOPT_WRITEFUNCTION?

1 个答案:

答案 0 :(得分:0)

我自己的问题的答案是:

CURLOPT_RETURNTRANSFER基本上是内置的WRITEFUNCTION。

当您指定另一个WRITEFUNCTION时,您会覆盖CURLOPT_RETURNTRANSFER,因此如果您正在尝试做什么,则必须自己进行RETURNTRANSFER。

我希望php curl包会在"警告:CURLOPT_WRITEFUNCTION覆盖CURLOPT_RETURNTRANSFER"的行中引发错误。但我确信他们有理由不这样做。