Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
未将文件添加到ZIP存档php_Php_Zip - Fatal编程技术网

未将文件添加到ZIP存档php

未将文件添加到ZIP存档php,php,zip,Php,Zip,我尝试了两种向ZIP添加文件的方法。但他们都没有工作。下载的ZIP大小为0字节。我有以下代码将文件从uploads/Applications文件夹添加到ZIP存档 //初试 $handle = opendir("uploads/Applications/"); while(false !== ($file = readdir($handle))) if ($file != "." && $file != "..") { $zip->addFile("upl

我尝试了两种向ZIP添加文件的方法。但他们都没有工作。下载的ZIP大小为0字节。我有以下代码将文件从uploads/Applications文件夹添加到ZIP存档

//初试

$handle = opendir("uploads/Applications/");
while(false !== ($file = readdir($handle)))
  if ($file != "." && $file != "..")
  {
    $zip->addFile("uploads/Applications/" . $file);
  }
//第二次尝试

$zip->addEmptyDir("Applications/");
foreach (glob("uploads/Applications/*") as $file) {
  $zip->addFile($file, "Applications/" . basename($file));
}

$zip->close();
//使zip可下载

header('Content-type: application/zip');
header('Content-Disposition: attachment; filename="'.$zip_name.'"');
readfile($zip_name);
unlink($zip_name);

请帮我找出我的代码哪里出错了。提前感谢。

输出缓冲是否打开?使用ob_get_level()检查。另外,您是否尝试删除取消链接()?也许它会在客户端实际下载文件之前删除该文件。请参阅,谢谢您的回复。我真的很感激。我解决了这个问题。问题不在于代码,而在于服务器上的文件夹权限。该文件夹没有写入权限,因此未创建可供下载的zip文件。是否打开输出缓冲?使用ob_get_level()检查。另外,您是否尝试删除取消链接()?也许它会在客户端实际下载文件之前删除该文件。请参阅,谢谢您的回复。我真的很感激。我解决了这个问题。问题不在于代码,而在于服务器上的文件夹权限。该文件夹没有写入权限,因此未创建可供下载的zip文件。
header('Content-type: application/zip');
header('Content-Disposition: attachment; filename="'.$zip_name.'"');
readfile($zip_name);
unlink($zip_name);