你可以使用PHP's内置的Curl函数设置下载的最大文件大小吗?


Can you set a max file size to download using PHP's built in Curl functions?

当从命令行使用Curl时,您可以使用以下命令将下载的文件大小限制为250kb:

curl 'http://www.domain.com' --max-filesize 250000

我在使用PHP的curl_init()curl_setopt()时找不到设置

我错过了什么吗?

可以,如果你使用回调-

CURLOPT_READFUNCTION传递一个将被调用来读取数据的函数。回调函数原型:

string read_callback (resource ch, resource fd, long length)

参数是CURL会话句柄。fd参数是通过CURLOPT_INFILE选项传递给CURL的文件描述符。length参数是可以返回的最大长度。函数必须返回包含所读取数据的字符串。如果数据的长度大于最大长度,它将被截断为最大长度。返回字符串以外的任何值都意味着EOF。

参见curl_setopt

如果不单独向托管文件的web服务器发出请求,则无法使用PHP内置的curl函数来完成此操作。