下面的函数做了,要将一个zip文件夹提取到一个目录后,该zip文件夹需要移动到另一个文件夹。
它有时工作,有时不工作,工作函数的概率很低。因此,我想寻求您的帮助来优化和建议这个功能应该在任何类型的环境中,它应该独立于操作系统。
function extractTo(){
//This will extract project directory to fetch installable version of TV APP.
$path='../';
$filename = 'xyz-v1.22.zip';
$zipname = $path.$filename;
$zip = new ZipArchive;
if($zip->open($zipname))
{
for($i=0; $i<$zip->numFiles; $i++)
{ //echo 'Filename: '.$zip->getNameIndex($i).'<br />';
}
if($zip->extractTo('../StadVis/')){
sleep(1);
unlink($zipname);
}else{
return "not success";
}
$zip->close();
//chmod('../StadVis/'.$filename1, 0777);
if (rename('../'.$filename,'../versions/'.$filename))
{
return "success";
//echo "File Copy";
}
else {
return "not success";
//echo "File Not Copy";
}
}
else
{
return 'Error reading zip-archive!';
}
}
1/在脚本中使用绝对路径:
$path=getcwd()."/..";
2/你在../工作目录,因此更改目录:
chdir('../');
3/合并解决方案1+2