PHP ZipArchive::open不会创建zip文件
我不能让ZipArchive创建zip文件,但它不会给我任何错误,除了在$zip->close上返回False 我正试图在一个目录中创建一个zip归档文件,该目录比正在进行操作的目录低几倍PHP ZipArchive::open不会创建zip文件,php,ziparchive,Php,Ziparchive,我不能让ZipArchive创建zip文件,但它不会给我任何错误,除了在$zip->close上返回False 我正试图在一个目录中创建一个zip归档文件,该目录比正在进行操作的目录低几倍 $file_name = 'example.txt'; // or whatever, I'm including a few $zip = new ZipArchive(); $path = getcwd() . '/output/run1/'; $zip_name = 'files_run1.zip
$file_name = 'example.txt'; // or whatever, I'm including a few
$zip = new ZipArchive();
$path = getcwd() . '/output/run1/';
$zip_name = 'files_run1.zip';
$zip_p_name = $path . $zip_name;
$res = $zip->open($zip_p_name, ZIPARCHIVE::CREATE);
if (!($res ===TRUE)) echo 'failed, code:'.$res;
else
{
if (file_exists($zip_path . '/' . $file_name))
{
$add = $zip->addFile($zip_path . '/' . $file_name);
if (!($add)) echo "didn't work";
}
else echo "File doesn't exist!";
$close = $zip->close();
if ($close) echo 'File Closed';
else echo 'fail!!';
}
那一小部分只输出“失败!!”。你知道我错过了什么吗 $zip_p_name上有一个星号,您是否有权在该路径中创建文件。试着用fopen,而不是ZipArchive来检查星号是否是我在复制代码时输入的错别字,它实际上并不存在。但是很好的发现。明天早上我会尝试使用权限。谢谢。很棒的保险杠盒,解决了这个问题。我必须对output/run1文件的权限进行chmod,以授予该组的写访问权限,并且必须确保Apache在该组中。这似乎是不明智的安全原因,但我有整个网站的密码保护,所以应该可以。如果你想写它作为一个答案,我会选择它作为正确的,如果你喜欢。