Ответов: 10 Просмотров: 12672
|
Задача довольно простая: есть на хостинге много каталогов с n-ным количеством файлов (до 15 штук) каждый. Файлы с разными расширениями.
Время от времени мне надо брать все содержимое какого-нить одного такого каталога к себе на локальную машинку. Не могу сообразить, как бы мне забрать из каталога все одним файлом, но так, чтобы архив не сохранялся.
Создать сам архив - не проблема. Например:
PHP:
скопировать код в буфер обмена
<?PHP $pathdir='test/'; // путь к папке, файлы которой будем архивировать $nameArhive = 'test.zip'; //название архива $zip = new ZipArchive; // класс для работы с архивами if ($zip -> open($nameArhive, ZipArchive::CREATE) === TRUE){ // создаем архив, если все прошло удачно продолжаем $dir = opendir($pathdir); // открываем папку с файлами while( $file = readdir($dir)){ // перебираем все файлы из нашей папки if (is_file($pathdir.$file)){ // проверяем файл ли мы взяли из папки $zip -> addFile($pathdir.$file, $file); // и архивируем echo("Заархивирован: " . $pathdir.$file) , '<br/>'; } } $zip -> close(); // закрываем архив. echo 'Архив успешно создан'; }else{ die ('Произошла ошибка при создании архива'); } ?>
однако при таком раскладе:
1) архив останется где-то там на хостинге. А как бы не надо;
2) придется делать еще один клик мышкой по полученной ссылке на архив. А хотелось бы по одному клику сразу скачать...
Подскажите, плиз |