Кажется, я успешно создаю zip-архив «на лету» (filesize и file_exists оба возвращают ожидаемые значения), но когда я пытаюсь фактически загрузить его, я получаю пустой ZIP-файл.
Любопытно, что эта ошибка возникает как с readfile, так и с fread. Это мой код
$filename = $zip;
$handle = fopen($filename, 'r');
if ($handle === false)
{
die('Could not read file "' . $filename . '"');
}
header('Content-type: application/zip');
header('Content-Disposition: attachment; filename="fsdownload.zip"');
header('Cache-Control: private');
while (!feof($handle))
{
echo fread($handle, 8192);
}
fclose($handle);
Это прекрасно работает для zip-файлов <10 МБ. Есть мысли о том, в чем может быть проблема? </p>