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 相关文章推荐
4.与数据库的连接
Oct 09 PHP
html中select语句读取mysql表中内容
Oct 09 PHP
解析linux下安装memcacheq(mcq)全过程笔记
Jun 27 PHP
php断点续传之如何分割合并文件
Mar 22 PHP
CI框架中zip类应用示例
Jun 17 PHP
php数组合并array_merge()函数使用注意事项
Jun 19 PHP
基于PHP的简单采集数据入库程序【续篇】
Jul 30 PHP
PHP @ at 记号的作用示例介绍
Oct 10 PHP
smarty简单分页的实现方法
Oct 27 PHP
PHP易混淆知识整理笔记
Sep 24 PHP
ThinkPHP3.2.3框架实现执行原生SQL语句的方法示例
Apr 03 PHP
PHP使用Http Post请求发送Json对象数据代码解析
Jul 16 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
第十三节--对象串行化
2006/11/16 PHP
php实现微信扫码支付
2017/03/26 PHP
laravel ORM 只开启created_at的几种方法总结
2018/01/29 PHP
js自定义事件代码说明
2011/01/31 Javascript
详谈JavaScript 匿名函数及闭包
2014/11/14 Javascript
sails框架的学习指南
2014/12/22 Javascript
JQuery复制DOM节点的方法
2015/06/11 Javascript
js实现滚动条滚动到页面底部继续加载
2015/12/19 Javascript
jQuery+css实现的时钟效果(兼容各浏览器)
2016/01/27 Javascript
微信小程序 详解页面跳转与返回并回传数据
2017/02/13 Javascript
JS验证全角与半角及相互转化的介绍
2017/05/18 Javascript
深入理解Vue-cli搭建项目后的目录结构探秘
2017/07/13 Javascript
JS库 Highlightjs 添加代码行号的实现代码
2017/09/13 Javascript
利用CDN加速react webpack打包后的文件详解
2018/02/22 Javascript
微信小程序绘制图片发送朋友圈
2019/07/25 Javascript
JS使用H5实现图片预览功能
2019/09/30 Javascript
Node配合WebSocket做多文件下载以及进度回传
2019/11/07 Javascript
vue.js 子组件无法获取父组件store值的解决方式
2019/11/08 Javascript
原生js实现随机点餐效果
2019/12/10 Javascript
[05:39]2014DOTA2西雅图国际邀请赛 淘汰赛7月14日TOPPLAY
2014/07/14 DOTA
用python实现的可以拷贝或剪切一个文件列表中的所有文件
2009/04/30 Python
python使用ctypes模块调用windowsapi获取系统版本示例
2014/04/17 Python
Python中列表和元组的使用方法和区别详解
2020/12/30 Python
python自动裁剪图像代码分享
2017/11/25 Python
Python面向对象程序设计类的封装与继承用法示例
2019/04/12 Python
深入浅出CSS3 background-clip,background-origin和border-image教程
2011/01/27 HTML / CSS
美国派对用品及装饰品网上商店:Shindigz
2016/07/30 全球购物
英国鞋网:Rubber Sole
2020/03/03 全球购物
最新的大学生找工作自我评价
2013/09/29 职场文书
经济学博士求职自荐信范文
2013/11/23 职场文书
酒店销售经理岗位职责
2014/01/31 职场文书
银行金融服务方案
2014/06/11 职场文书
环卫工人慰问信
2015/02/15 职场文书
业务员辞职信范文
2015/03/02 职场文书
环保建议书作文300字
2015/09/14 职场文书
Promise面试题详解之控制并发
2021/05/14 面试题