我正在使用php复制功能提取zip文件并使用复制功能将文件放到新目录中(实际上我没有使用$ zip-> extractTo,因为它还保留了zip的dir结构,我想要解压缩我正在创建的单个目录中的所有文件。 我的代码是
$zip = new ZipArchive;
if ($zip->open($src)===true)
{
//$zip->extractTo($dest);
//$zip->close();
// Above method maintain dir stucture of zip as well,
// but we need files directly in dest folder
for($i = 0; $i < $zip->numFiles; $i++)
{
$filename = $zip->getNameIndex($i);
if(substr($filename, -1) == '/')
continue; // Its a directory name so skip and dont add in dest folder
$fileinfo = pathinfo($filename);
copy("zip://".$src."#".$filename, $dest.$fileinfo['basename']);
}
$zip->close();
return true;
}
这在我的开发和QA服务器上工作正常,我有PHP 5.2和5.3 但它不适用于PHP 5.5.14。
copy("zip://".$src."#".$filename, $dest.$fileinfo['basename']);
返回false。 所以问题在于复制。
任何人都可以建议可以解决的问题。