插件窝 干货文章 php一键打包压缩目录文件示例代码

php一键打包压缩目录文件示例代码

gt 打包 一键 files 894    来源:    2024-10-29

php一键打包压缩目录文件代码示例,代码如下所示:

<?php     
$button=$_POST['button'];     
if($button=="开始打包")     
{     
    $zip = new ZipArchive();     
    $filename = "./".date("Y-m-d")."_".md5(time())."_zy.zip";     
    if ($zip->open($filename, ZIPARCHIVE::CREATE)!==TRUE) {     
        exit("无法创建 <$filename>n");     
        }     
    $files = listdir();     
    foreach($files as $path)     
    {     
        $zip->addFile($path,str_replace("./","",str_replace("","/",$path)));    
    }    
    echo "压缩完成,共压缩了: " . $zip->numFiles . "个文件n";    
    $zip->close();    
}    
Function listdir($start_dir='.') {    
  $files = array();    
  if (is_dir($start_dir)) {    
   $fh = opendir($start_dir);    
   while (($file = readdir($fh)) !== false) {    
     if (strcmp($file, '.')==0 || strcmp($file, '..')==0) continue;    
     $filepath = $start_dir . '/' . $file;    
     if ( is_dir($filepath) )    
       $files = array_merge($files, listdir($filepath));    
     else   
       array_push($files, $filepath);    
   }    
   closedir($fh);    
  } else {    
   $files = false;    
  }    
 return $files;    
}    
?>    
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >     
<html>     
    <head>     
        <title>打包工具</title>     
        <meta http-equiv="Content-Type" content="text/html; charset=gb2312">    
    </head>    
    <body>    
        <form name="form1" method="post" action="">    
            <hr size="1">    
            <P> <input type="submit" name="button" value="开始打包" /></P>     
        </form>     
    </body>     
</html>

到此这篇关于php一键打包压缩目录文件代码示例的文章就介绍到这了,更多相关php一键打包压缩目录文件内容请搜索插件窝以前的文章或继续浏览下面的相关文章希望大家以后多多支持插件窝!