Задать вопрос
@LitteShiki
Noob-programmer

Как правильно записать несколько картинок в папку в архиве через PHP?

Необходимо запихать несколько изображений(от 1 до n) в архив, создаваемый через класс ZipArchive. Сам архив с excel файлом создается корректно. Когда начинаю писать изображения в архив, то он не создает архив явно, выгружая битый файл в 1 байт.

if($res === TRUE){
                $zip->addFile($file_1);
                $zip->addFile($file_2);
                $zip->addEmptyDir('photo_drivers');
                for($l=0;$l<count($img_array);$l++){
                        
                        $zip->addFile($img_array[$l][key($img_array[$l])]['photo'][0],"photo_drivers/".key($img_array[$l]).".jpg");
                }
                $zip->close();
                return $name_zip;
              } else {
                 return "error ".$res;
              }


UPD: Ломает архив из-за изображений. Но в чем причина в том, что он не хочет добавлять изображения в цикле. Одну фотографию из массива добавляет без проблем.
  • Вопрос задан
  • 123 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@PavelFokeev
pavl1k.ru
Проверьте пути
$currentFile = $img_array[$l][key($img_array[$l])]['photo'][0];
if(file_exists($currentFile)) 
  $zip->addFile($currentFile,"photo_drivers/".key($img_array[$l]).".jpg");
else
  echo "file $i not found <br/>";
Ответ написан
Ваш ответ на вопрос

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

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