【发布时间】:2017-11-20 08:41:21
【问题描述】:
我在创建和下载 Zip 文件时遇到问题
我在这段代码上看到 http://laravelcode.com/post/how-to-create-zip-file-in-laravel-using-ziparchive
这是我的控制器
public function download(){
$FOLDERID = $_GET['id'];
$FILEPATH = *My Database Query*
$PATHTOFILE = public_path().'/images/';
$ZIPNAME = 'ZIPFILENAME.zip';
$ZIP = new ZipArchive;
if ($ZIP->open($PATHTOFILE.'/'.$ZIPNAME, ZipArchive::CREATE) === TRUE) {
$FILES = *My Database Query to get file*
foreach ($FILES as $FILE) {
$ZIP->addFile($FILE->File_Path , $FILE->File_Name);
}
$ZIP->close();
}
else{
return "NO FILES CREATED";
}
我不知道这个是做什么的
$HEADERS = array(
'Content-Type' => 'application/octet-stream',
);
这个是用来下载压缩包的
if(file_exists($PATHTOFILE)){
return Response()->download($PATHTOFILE, $ZIPNAME, $HEADERS);
}else{
return "asd";
}
仍然不知道#HEADERS 是做什么的
我在创建 Zip 文件时遇到问题,错误总是在 $ZIP->close();
它说
ZipArchive::close():读取错误:文件描述符错误
你们能帮我看看我做错了什么吗?
提前谢谢你!
【问题讨论】:
-
错误是什么
-
ZipArchive::close(): Read error: Bad file descriptor sorry I didn't attach it
-
检查同名文件是否位于您创建文件的文件夹中。实际上你必须上传其他文件夹。
-
没有创建文件
-
请查看此链接,通过它制作zip文件非常容易。hdtuto.com/article/…