php 在线打包_支持子目录


Posted in PHP onJune 28, 2008

程序使用了php的zip扩展,如果服务器支持,那就可以用了^_^,生成的zip压缩包可以用winrar等来解压的,当然也可以用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("无法创建 <$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">   
            <h3><a href="?">在线打包工具</a></h3>   
            <P> <input type="submit" name="button" value="开始打包" /></P>    
            <P>说明:点开始打包,之后,就是耐心等待打包完成了,根据网站文件多少,需要的时间可能会很长。打包完成之后,压缩包会存放在要打包的站点目录下,以<span style='color:red;'>打包时间+不定长随机字符串+jackfeng.zip</span>这样命名,请登陆ftp后下载。</P>    
        </form>    
    </body>    
</html>

PHP 相关文章推荐
PHP 创建标签云函数代码
May 26 PHP
php获取post中的json数据的实现方法
Jun 08 PHP
dhtmlxTree目录树增加右键菜单以及拖拽排序的实现方法
Apr 26 PHP
PHP不用第三变量交换2个变量的值的解决方法
Jun 02 PHP
PHP中的替代语法简介
Aug 22 PHP
PHP之uniqid()函数用法
Nov 03 PHP
php字符串函数学习之strstr()
Mar 27 PHP
php中smarty模板条件判断用法实例
Jun 11 PHP
thinkPHP实现将excel导入到数据库中的方法
Apr 22 PHP
php使用curl模拟浏览器表单上传文件或者图片的方法
Nov 10 PHP
解决laravel资源加载路径设置的问题
Oct 14 PHP
PHP获取当前时间不准确问题解决方案
Aug 14 PHP
php 前一天或后一天的日期
Jun 28 #PHP
js下函数般调用正则的方法附代码
Jun 22 #PHP
php的正则处理函数总结分析
Jun 20 #PHP
PHP伪静态页面函数附使用方法
Jun 20 #PHP
PHP伪静态写法附代码
Jun 20 #PHP
用PHP伪造referer突破网盘禁止外连的代码
Jun 15 #PHP
php学习 字符串课件
Jun 15 #PHP
You might like
PHP 防注入函数(格式化数据)
2011/08/08 PHP
将二维数组转为一维数组的2种方法
2014/05/26 PHP
thinkPHP5框架实现基于ajax的分页功能示例
2018/06/12 PHP
TP5框架请求响应参数实例分析
2019/10/17 PHP
JavaScript 大数据相加的问题
2011/08/03 Javascript
javascript之typeof、instanceof操作符使用探讨
2013/05/19 Javascript
javascript实现数字+字母验证码的简单实例
2014/02/10 Javascript
动态添加删除表格行的js实现代码
2014/02/28 Javascript
js对象内部访问this修饰的成员函数示例
2014/04/27 Javascript
JS获取当前网页大小以及屏幕分辨率等
2014/09/05 Javascript
jQuery实现按钮的点击 全选/反选 单选框/复选框 文本框 表单验证
2015/06/25 Javascript
jQuery Mobile页面返回不需要重新get
2016/04/26 Javascript
BootStrap Table实现server分页序号连续显示功能(当前页从上一页的结束序号开始)
2017/09/12 Javascript
elementui的默认样式修改方法
2018/02/23 Javascript
浅谈Vue 数据响应式原理
2018/05/07 Javascript
vue打包使用Nginx代理解决跨域问题
2018/08/27 Javascript
ES5和ES6中类的区别总结
2020/12/21 Javascript
通过实例浅析Python对比C语言的编程思想差异
2015/08/30 Python
scrapy spider的几种爬取方式实例代码
2018/01/25 Python
对python GUI实现完美进度条的示例详解
2018/12/13 Python
python模拟菜刀反弹shell绕过限制【推荐】
2019/06/25 Python
面向对象学习之pygame坦克大战
2019/09/11 Python
用Python画小女孩放风筝的示例
2019/11/23 Python
Django自带的加密算法及加密模块详解
2019/12/03 Python
Python字符串格式化f-string多种功能实现
2020/05/07 Python
delegate与普通函数的区别
2014/01/22 面试题
12月小学生校园广播稿
2014/02/04 职场文书
小学生元旦感言
2014/02/26 职场文书
大学生优秀班干部事迹材料
2014/05/26 职场文书
春节超市活动方案
2014/08/14 职场文书
十一国庆节“向国旗敬礼”主题班会活动方案
2014/09/27 职场文书
护士辞职信怎么写
2015/02/27 职场文书
小程序wx.getUserProfile接口的具体使用
2021/06/02 Javascript
MybatisPlus EntityWrapper如何自定义SQL
2022/03/22 Java/Android
TV动画《史上最强大魔王转生为村民A》番宣CM公布
2022/04/01 日漫
关于pytest结合csv模块实现csv格式的数据驱动问题
2022/05/30 Python