The code is as follows:
$zip = new ZipArchive();
$criou = $zip->open("download.zip", ZipArchive::CREATE);
if ($criou === true){
$diretorio = UPLOAD_DIR . 'produto/small/';
foreach ($imagens as $imagem) {
$zip->addFile($diretorio . $imagem->arquivo . '.' . $imagem->extensao, $imagem->arquivo . '.' . $imagem->extensao);
echo $diretorio . $imagem->arquivo . '.' . $imagem->extensao;
echo '<br />';
}
$zip->close();
}else {
echo 'Erro: '.$criou;
}
The result of echo
within foreach
is displayed perfectly, without errors, as follows:
/site/public/uploads/produto/small/BN-260-A.jpg
/site/public/uploads/produto/small/BN-260-B.jpg
/site/public/uploads/produto/small/BN-261.jpg
/site/public/uploads/produto/small/BN-373.png
/site/public/uploads/produto/small/BN-10125-A.jpg
However, the downloaded file generates a loop with a file.