Утро все,Сохранение удаленного изображения с помощью cURL?
Существует несколько вопросов по этому вопросу, но никто из них не отвечает на мой вопрос, насколько я понимаю. В основном у меня есть сценарий GD, который занимается изменением размера и кэшированием изображений на нашем сервере, но мне нужно сделать то же самое с изображениями, хранящимися на удаленном сервере.
Итак, я хочу сохранить изображение локально, а затем изменить размер и отобразить его как обычно.
Я получил это далеко ...
$file_name_array = explode('/', $filename);
$file_name_array_r = array_reverse($file_name_array);
$save_to = 'system/cache/remote/'.$file_name_array_r[1].'-'.$file_name_array_r[0];
$ch = curl_init($filename);
$fp = fopen($save_to, "wb");
// set URL and other appropriate options
$options = array(CURLOPT_FILE => $fp,
CURLOPT_HEADER => 0,
CURLOPT_FOLLOWLOCATION => 1,
CURLOPT_TIMEOUT => 60); // 1 minute timeout (should be enough)
curl_setopt_array($ch, $options);
curl_exec($ch);
curl_close($ch);
fclose($fp);
Это создает файл изображения, но не копировать его accross? Я пропустил пункт?
Cheers guys.
Спасибо за ответ, хотя я получаю «Неподдерживаемый запрос PUT на http://imagepath.co m/image.jpg не поддерживается. Ссылка # 8.9ea178d5.1274174788.863a82c ". Я, однако, отсортировал его, и именно я был ключом ... – Tom
Просто уведомление: вы должны были использовать' CURLOPT_FILE => $ fp', иначе 'fwrite ($ fp , $ content); 'удваивает потребление памяти. – machineaddict