我正在尝试使用php下载多个文件。我知道这只能通过使用压缩档案来完成,但我不希望所有的目录和子目录都包含在下载的文件夹中,我只需要这些文件。
我试过使用“basename()”,但是当我这么做的时候它不会下载任何东西,下面是我的代码。
我还尝试使用“basename()”创建一个新的文件名数组,但仍然无法下载。
if ( extension_loaded( 'zip' ) ) {
$zipFolder = new ZipArchive();
$zipName = time().".zip";
if ( $zipFolder->open( $zipName, ZIPARCHIVE::CREATE ) !== TRUE ) {
echo "Sorry ZIP creation failed at this time";
}
foreach ( $filepathArray as $f ) {
$zipFolder->addFile($f);
}
$zipFolder->close();
if ( file_exists( $zipName ) ) {
header( 'Content-type: application/zip' );
header( 'Content-Disposition: attachment; filename="' . $zipName . '"' );
readfile( $zipName );
unlink( $zipName );
}
}
这是我的 Jmeter 板截图:
正如你看到的路径相当长,因此我不需要所有的文件夹,我只需要文件。
1条答案
按热度按时间o2gm4chl1#
http不支持一次下载多个文件。因此,使用javascript超时创建一个基页,该超时将用户重定向到每个文件,一次一个。
例子: