...
$file = 'file.zip';
header('Content-Description: File Transfer');
header('Content-Type: application/zip');
header('Content-Disposition: attachment; filename=' . basename($file));
header('Content-Length: ' . filesize($file));
$f = fopen($file, 'rb');
while (!feof($f)) {
echo fread($f, 8192);
flush();
}
fclose($f);
unlink($file);
...