我有一个.srt文件位于files / srt / username / filename.srt目录中。我需要能够在浏览器中下载它,但为了实现这一点,我必须首先压缩文件。 我在网上找到了以下代码:
function download_zip() {
if (isset($_POST['download_srt'])) {
$zip = new ZipArchive();
$zip->open("files/srt/".$_SESSION['user_name']."/".$_POST['download_srt'].".zip", ZipArchive::CREATE);
// output: files/srt/username/filename.srt.zip
$zip->addFile($_POST['download_srt']);
// output of $_POST['download_srt']: filename.srt
$zip->close();
}
}
按下提交按钮并发送$ _POST数据时,将调用代码。 该函数有效,但在与原始srt文件相同的目录中不会创建ZIP文件。没有出现错误消息。
答案 0 :(得分:1)
您应该提供要添加的文件的正确路径:
$zip->addFile("files/srt/".$_SESSION['user_name']."/".$_POST['download_srt']);