Использую этот модуль:
https://github.com/Chumper/Zipper
Метод:
public function getDownloadAllPassport($passports)
{
$passports = explode(',', $passports);
$name = uniqid();
foreach ($passports as $passport) {
$user_name = VisaOrder::findOrFail($passport)->name;
if (Upload::getFiles('passport', $user_name)) {
File::copyDirectory("upload/passport/$user_name", "upload/zip/$name/$user_name");
}
}
Zipper::make("upload/zip/$name/passport.zip")->add(glob("upload/zip/$name"));
return response()->download(public_path("upload/zip/$name/passport.zip"));
}
Метод работает почти как надо, зигует и копирует куда надо. Но в конце когда нужно выдать файл выдает вот такую ошибку:
FileNotFoundException in File.php line 37:
The file "/home/dragger/MyProjects/site.local/public/upload/zip/5824f3b11b986/passport.zip" does not exist
Решил по экспериментировать закоментел весь код в методе кроме
return :
public function getDownloadAllPassport($passports)
{
// $passports = explode(',', $passports);
// $name = uniqid();
// foreach ($passports as $passport) {
// $user_name = VisaOrder::findOrFail($passport)->name;
// if (Upload::getFiles('passport', $user_name)) {
// File::copyDirectory("upload/passport/$user_name", "upload/zip/$name/$user_name");
// }
// }
// Zipper::make("upload/zip/$name/passport.zip")->add(glob("upload/zip/$name"));
return response()->download(public_path("upload/zip/5824f3b11b986/passport.zip"));
}
Как тут же у меня идет скачивание файла. Не знаю почему он его с первого раза невидит.