Как загрузить файл на сервер через ссылку?

Как загрузить файл на сервер через ссылку? Например https://www.google.ru/images/srpr/logo11w.png в определенный каталог на сервере.
  • Вопрос задан
  • 21675 просмотров
Пригласить эксперта
Ответы на вопрос 5
@ugodrus
function downloadFile ($URL, $PATH) {
    $ReadFile = fopen ($URL, "rb");
    if ($ReadFile) {
        $WriteFile = fopen ($PATH, "wb");
        if ($WriteFile){
            while(!feof($ReadFile)) {
                fwrite($WriteFile, fread($ReadFile, 4096 ));
            }
            fclose($WriteFile);
        }
        fclose($ReadFile);
    }
}

Метод отлично работает на больших объемах.
Можете также реализовать через сокеты. Тоже няшка получается.
Ответ написан
DmitriyEntelis
@DmitriyEntelis
Думаю за деньги
Комментировать
Symphony
@Symphony
файл load.php
<?php
// Каталог files
$link = 'https://www.google.ru/images/srpr/logo11w.png';
$uploaddir = './files/';
$uploadfile = $uploaddir.basename($link);

// Копируем файл в files
if (copy($link, $uploadfile)){
     echo "Файл успешно загружен на сервер";
}
?>
Ответ написан
Комментировать
butteff
@butteff
Раз в тысячу лет заправляю свитер в носки
1. Берем через file_get_contents() или fopen() ссылку в переменную.
2. Пишем эту переменную в файл с помощью fwrite()

До пункта один хорошо бы проверить размер файла, а то картинка может весить много гигабайт.
Ответ написан
Комментировать
$file = 'https://www.google.ru/images/srpr/logo11w.png';
$file_name = basename('https://www.google.ru/images/srpr/logo11w.png');
file_put_contents('my_folder'.$file_name, file_get_contents($file));
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы