服务器端解压缩zip的脚本_php实例

分享到:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head>  
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />  
<title>文件解压缩管理</title>  
</head>  
<body>  
<?php  
// In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead  
// of $_FILES.  
if (isset($_POST["Submit"])) {  
   echo "FileName:     " . $_POST['unpackfile'] . "<br />\n";  
   echo "UnpackPath:   " . $_POST['unpackpath'] . "<br />\n";  
   $zip = zip_open($_POST['unpackfile']);  
   if ($zip) {  
      while ($zip_entry = zip_read($zip)) {  
         echo "Name:               " . zip_entry_name($zip_entry) . "<br />\n";  
         echo "Actual Filesize:    " . zip_entry_filesize($zip_entry) . "<br />\n";  
         echo "Compressed Size:    " . zip_entry_compressedsize($zip_entry) . "<br />\n";  
         echo "Compression Method: " . zip_entry_compressionmethod($zip_entry) . "<br />\n";  

         if (zip_entry_open($zip, $zip_entry, "r")) {  
            $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));   // File content  
            echo "step 1 successful!<br />\n";  
            if(zip_entry_filesize($zip_entry)!=0) {  
               $fp = fopen($_POST['unpackpath']."/".zip_entry_name($zip_entry), 'wb');  
               fwrite($fp, $buf);  
               fclose($fp);  
               zip_entry_close($zip_entry);  
               echo "unpack successful!<br />\n";  
            } else {  
               mkdir($_POST['unpackpath']."/".zip_entry_name($zip_entry), 0777);  
               echo "mkdir successful!<br />\n";  
            }  
         }  
         echo "<br><br>\n\n";  
      }  
      zip_close($zip);  
   }  
?>  
</body>  
</html>  
<?php  
exit();  
}  
?>  
<form id="form1" name="form1" enctype="multipart/form-data" method="post" action="<?=$_SERVER['PHP_SELF']?>">  
  待解压文件<input type="text" name="unpackfile" />  
  解压缩路径<input type="text" name="unpackpath" />  
  <input type="submit" name="Submit" value="解压" />  
</form>  
</body>  
</html> 

昵    称:
验证码: