Задать вопрос
@DocTypeMaster

Как заполнить архив выборкой из массива в laravel?

Помогите решить проблемку, есть на ларавел форма в которой я передаю файлы, мне нужно эти файлы записать в архив и сохранить его в папке public

сейчас имею такой код
public function Upload (Request $request) {
// Тут я сохраняю файлы в папку но эти файлы мне нужно сразу записать в архив и сохранить уже его в папку
     $arrf = $request->file('file');
      foreach ($arrf as $file) {
        $file->store('test/image');
      }


  $zip = new \ZipArchive();
  $filename = "t.zip";

  if ($zip->open($filename, \ZipArchive::CREATE)!==TRUE) {
      exit("Невозможно открыть <$filename>\n");
  }
// я так понимаю тут нужно сделать цикл для записи всех файлов, но я пока не понимаю как оно должно работать , вернее как обращаться к имени файла который я записываю
  $zip->addFile("test\image\invoices.png", "index.png");

  $zip->close();
      return response()->download($zip);
    }
  • Вопрос задан
  • 140 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
no4ch
@no4ch
Веб-разработчик
1)Для перебора файлов в определенной директории используй:
https://www.php.net/manual/ru/function.glob.php
2)Чтобы не указывать расширение файлов используй:
https://www.php.net/manual/ru/function.scandir.php
Но здесь есть нюанс, нужно отсеять директории:
https://www.php.net/manual/ru/function.is-dir.php

И в цикле foreach собственно добавляй файлы, а после (не в курсе за Zip библиотеку) выполни действия согласно документации (закрой архив или же сохрани).
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽