У меня есть этот код, чтобы загрузить ZIP-файл с сервера:PHP Загрузка пустых файлов и некоторые Обычно
<?php
$path_parts = pathinfo($_GET['a']);
$file_name = $path_parts['basename'];
$file_path = 'temp/' . $file_name;
if (file_exists($file_path)) {
$size = filesize($file_path);
header('Cache-Control: must-revalidate');
header('Pragma: public');
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=$file_name");
header('Expires: 0');
header("Content-Type: application/zip");
header("Content-length: $size");
header("Content-Transfer-Encoding: binary");
// read the file from disk
readfile($file_path);
}
else
echo 'File does not exists';
?>
файлы хранятся в папке /temp
и любопытная вещь, что если я скачиваю TXT
файл, он работает в порядке, но если файл является файлом ZIP
, он загружает пустой файл. Даже если я изменю расширение файла ZIP
на TXT
, он по-прежнему загружается пустым, но любая другая загрузка файла просто прекрасна. Что может вызвать такое поведение?
Фактически, он загружает любой другой файл, кроме ZIP
файлов в папке.
Я просто сделал, и он загружает файлы 'TXT',' JAR' и любые другие файлы, но файлы 'ZIP' пусты. –