На моем сайте я хочу разместить ссылку, которая может заархивировать определенную папку, включая ее содержимое, а затем позволить пользователю загрузить ее. Он будет использоваться для загрузки в комплекте файлов.
попробуйте этот код:
$files[] = base_url().'uploads/'.$names->file_name;
передать ваши файлы в это $files[]
массив.
$zip = new ZipArchive();
$tmp_file = tempnam('.','');
$zip->open($tmp_file, ZipArchive::CREATE);
foreach($files as $file)
{ //echo $file; exit;
$download_file = file_get_contents($file);
$zip->addFromString(basename($file),$download_file);}
$zip->close();
header('Content-disposition: attachment; filename=project_files.zip');
header('Content-type: application/zip');
readfile($tmp_file);
Других решений пока нет …