您好我正在尝试创建一个新的zip文件,我已经重新编译了PHP启用ZIP,这里是我的代码
if($_SERVER['REQUEST_METHOD'] == "POST"){
$zip = new ZipArchive;
if($zip->open("/home/user1joe/public_html/upload/test.zip",ZIPARCHIVE::CREATE)!= true) {
echo "error file did not up upload";
exit(0);
}
foreach ($_FILES["images"]["error"] as $key => $error)
if ($error == UPLOAD_ERR_OK) {
$temp_name = $_FILES["images"]["tmp_name"][$key];
$new_name = $_FILES['images']['name'][$key];
var_dump($temp_name);
var_dump($new_name);
if(file_exists($temp_name)){
$zip->addFile($temp_name,$new_name);
move_uploaded_file($temp_name, "upload/".$new_name);
} else
echo "error file does not exist";
echo "numfiles: " . $zip->numFiles . "\n";
echo "status:" . $zip->status . "\n";
}
$res = $zip->close();
var_dump($res);
}
$ zip-> close()返回false并且没有创建zip。
我有点失去了我能测试的其他东西,任何想法都会很棒!
答案 0 :(得分:1)
zip-> close()方法执行一些处理(实际压缩,或者只是获取/写入文件属性),这需要存档中添加的文件。 但是,您要使用move_uploaded_file()调用从原始位置删除输入文件。