我有一个异步的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?
答案 0 :(得分:0)
我自己的问题的答案是:
CURLOPT_RETURNTRANSFER基本上是内置的WRITEFUNCTION。
当您指定另一个WRITEFUNCTION时,您会覆盖CURLOPT_RETURNTRANSFER,因此如果您正在尝试做什么,则必须自己进行RETURNTRANSFER。
我希望php curl包会在"警告:CURLOPT_WRITEFUNCTION覆盖CURLOPT_RETURNTRANSFER"的行中引发错误。但我确信他们有理由不这样做。