Я использовал следующую функцию для загрузки изображений с дистрибьютора для использования на нашем веб-сайте, как описано здесь :
$url = "http://img.ruphp.com/php/lg-9781936417445.jpg"; $itemnum = 80848; $path = "www.gullions.com/localstore/test/test.jpg"; header('Content-type: image/jpeg'); $ch = curl_init($url); $fp = fopen("http://img.ruphp.com/php/test.jpg", 'wb'); curl_setopt($ch, CURLOPT_FILE, $fp); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_exec($ch); curl_close($ch); fclose($fp);
Вместо того, чтобы загружать и сохранять изображение, он выводит на экран только сумасшедшие символы. Я знаю, это означает, что по какой-то причине браузер пытается отобразить изображение, но, скорее всего, не распознает тип файла. Но я не могу найти проблему. Вы можете увидеть безумный выход, перейдя сюда . Чтобы убедиться, что изображение не было загружено и сохранено, вы можете перемещаться здесь . Кроме того, FTP также показывает, что файл не был загружен. Если вы перейдете к URL-адресу загрузки исходного изображения, вы увидите, что файл, который мы пытаемся загрузить, на самом деле существует.
Я связался с моим хостом и подтвердил, что на сервере не были изменены настройки, что cURL работает правильно и даже откат моего браузера, чтобы убедиться, что последнее обновление не вызвало проблему. Я создал тестовый файл, удалив функцию из приложения и попытался запустить ее отдельно, но имел только те же результаты.