PaulM
Новичок
CURL - как скачать большой файл?
Делаю так:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$URL); // set url to post to
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // allow redirects
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // return into a variable
curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_REFERER, $URL);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)");
// ВОТ ТУТ ВОЗВРАЩАЕТ FALSE!!!!
$result = curl_exec($ch); // run the whole process
curl_close($ch);
Почему? $result == false. Если файл маленький - то все ок. Но если большой 10 мегов и более, то false. Ощущение что он в память отведелнную php не помещается. Тогда как не увеличивая лимит для php заставить curl сохранить этот файл напрямую на диск? Можно так? Что если окажется что файл надо скачать 100мегов? Увеличивать лимиты для php опять?
Вообщем как сохранить файл напрямую на диск не считывая его содержимое в переменную?
Делаю так:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$URL); // set url to post to
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // allow redirects
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // return into a variable
curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_REFERER, $URL);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)");
// ВОТ ТУТ ВОЗВРАЩАЕТ FALSE!!!!
$result = curl_exec($ch); // run the whole process
curl_close($ch);
Почему? $result == false. Если файл маленький - то все ок. Но если большой 10 мегов и более, то false. Ощущение что он в память отведелнную php не помещается. Тогда как не увеличивая лимит для php заставить curl сохранить этот файл напрямую на диск? Можно так? Что если окажется что файл надо скачать 100мегов? Увеличивать лимиты для php опять?
Вообщем как сохранить файл напрямую на диск не считывая его содержимое в переменную?