通过为 cURL 设置一个可写的文件流解决文件被写入磁盘之前占用过多内存的问题。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
function downloadDistantFile($url, $dist) { $ch = curl_init();
curl_setopt_array($ch, [ CURLOPT_FILE => is_resource($dist) ? $dist : fopen($dist, 'w'), CURLOPT_FOLLOWLOCATION => true, CURLOPT_MAXREDIRS => 10, CURLOPT_URL => $url, CURLOPT_FAILONERROR => true, ]);
return curl_exec($ch) === false ? curl_error($ch) : true; }
|