Блог специалистов
19.01.2018

Скрипт скачать картинки, файлы с удаленного сервера с иерархией папок, рекурсивно

Задача не частая, но иногда появляется необходимость скачать картинки (изображения), файлы с удаленного сервера сохранив иерархию (вложенность) папок (директорий), то есть рекурсивно.

Чтобы не тратить время на поиски в интернете или не писать его самому, представляем уже готовый скрипт. С его помощью скачивали около 500 небольших картинок, всё проходило удачно.

<?php $txt=" http://domen.ru/image/catalog/tovar/peskobeton/foto.jpg http://domen.ru/image/catalog/tovar/shpatlevki/foto.jpg http://domen.ru/image/catalog/tovar/shtukaturki/foto2.jpg http://domen.ru/image/catalog/tovar/shtukaturki/foto3.png http://domen.ru/image/catalog/tovar/shtukaturki/foto4.jpg http://domen.ru/image/catalog/tovar/2.jpeg "; //сюда вставляем все наши ссылки их было более 1000 $a1=explode("\n",$txt); $a1=array_unique($a1); foreach($a1 as $url) { $ch = curl_init($url); // инициализация $path_parts = pathinfo($url); //получаем название файла из URL $urlParts = parse_url($path_parts['dirname']); $dir = '/home/admin/web/site.ru/public_html/upload'.$urlParts['path']; //меняем на свой путь до нужной директории // сохраняем полученный файл с его оригинальным названием if (!mkdir($dir, 0777, true)) { echo ('<br>'); } $fp = fopen($dir.'/'.$path_parts['basename'], 'wb'); curl_setopt($ch, CURLOPT_FILE, $fp); curl_setopt($ch, CURLOPT_HEADER, 0); curl_exec($ch); curl_close($ch); fclose($fp); echo $dir; } ?>

Количество показов: 469




Возврат к списку