一哥们要实现 php 的在线打包工具,随手在网上搜索了一个,但跟哥们的要求不一样,他的要求是在页面进行的变量传递过来的文件进行打包并在浏览器进行下载,但从网上找来的这个测试了下感觉系统还不错,代码量也较少,只不过是对某一个目录文件整个的一个打包,<?php
$button=$_POST['button'];
if($button=="开始打包")
{
$zip = new ZipArchive();
$filename = "./".date("Y-m-d")."_".md5(time())."_jackfeng.zip";
if ($zip->open($filename, ZIPARCHIVE::CREATE)!==TRUE) {
exit("无法创建 \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;
}
?>
在线打包工具End
关键词: 夏日博客
温馨提示:如果您对本文有疑问,请在本页留言即可!!!
觉得很赞 (0)付款方式
X
付款方式: 微信
支付宝
QQ红包
使用微信扫一扫
打开支付宝扫一扫
打开QQ扫一扫