服务器端解压缩zip的脚本


复制代码 代码如下:
<!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>



相关阅读:
5个实例让你轻松了解CSS3新属性
如何写一个通用的JavaScript效果库!(1/2)
取得表单提交的所有数据
ASP.NET4.0新改进和新特性
FreeBSD的boot0阶段介绍
JavaScript 开发规范要求(图文并茂)
PHP5中的PDO的使用和介绍
Windows和Linux双系统Grub菜单编写技巧
SQL Server小知识:Recovery Interval
用Oracle和SQL Server数据库组合利弊分析
Linux下光驱挂载技巧
让按钮失效5秒的js代码
基于jquery的无限级联下拉框js插件
Oracle 10g “DataGuard”的日志传输方式
快速导航

Copyright © 2016 phpStudy | 皖ICP备18014864号-4