【发布时间】:2015-11-30 16:33:31
【问题描述】:
我正在尝试随机下载一些文件。
我很抱歉,因为我之前发布了它,但有人可以详细解释我做错了什么吗?
我似乎无法调试它,因为我知道最小的 php。
<?php
$rootPath = realpath('./uploads');
//make zip file
$zip = new ZipArchive();
$zip->open('file.zip', ZipArchive::CREATE | ZipArchive::OVERWRITE);
$nfiles = glob($rootPath.'*.{aiff}', GLOB_BRACE);
$files = array_rand($nfiles, 20);
foreach($files as $file) {
$pathtofile = $nfiles[$file];
if (!$file->isDir())
{
// Get path for current file
$filePath = $pathtofile->getRealPath();
$relativePath = str_replace($rootPath, "", $file);
// Add file to zip
$zip->addFile($filePath, $relativePath);
}
}
//-------------------------------------------//
$zip->close();
header('Content-Type: application/zip');
header('Content-disposition: attachment;
filename='.'generatedsounds.zip');
header('Content-Length: ' . filesize('file.zip'));
readfile('file.zip');
if(file_exists('file.zip'))
{
unlink('file.zip');
}
?>
【问题讨论】:
-
有什么问题?什么不工作?你得到什么错误?
-
你的问题是什么?运行代码时会发生什么? 是否运行?
-
我所做的是这样的:
<a href="/my/path/file.php" download="">Download file</a>。为我工作:) -
改进的代码格式、改进的标签和改进的标题。
标签: php php-zip-archive