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 相关文章推荐
如何批量替换相对地址为绝对地址(利用bat批处理实现)
May 27 PHP
浅析PHP页面局部刷新功能的实现小结
Jun 21 PHP
Thinkphp中Create方法深入探究
Jun 16 PHP
thinkphp模板赋值与替换实例简述
Nov 24 PHP
PHP比你想象的好得多
Nov 27 PHP
PHP中iconv函数知识汇总
Jul 02 PHP
yii去掉必填项中星号的方法
Dec 28 PHP
php+mysql+jquery实现日历签到功能
Feb 27 PHP
php ajax confirm 删除实例详解
Mar 06 PHP
PHP操作路由器实现方法示例
Apr 27 PHP
Laravel 微信小程序后端搭建步骤详解
Nov 26 PHP
分享几种好用的PHP自定义加密函数(可逆/不可逆)
Sep 15 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
用PHPdig打造属于你自己的Google[图文教程]
2007/02/14 PHP
获取php页面执行时间,数据库读写次数,函数调用次数等(THINKphp)
2013/06/03 PHP
php中有关字符串的4个函数substr、strrchr、strstr、ereg介绍和使用例子
2014/04/24 PHP
PHP中如何使用session实现保存用户登录信息
2015/10/20 PHP
CI映射(加载)数据到view层的方法
2016/03/28 PHP
总结PHP中初始化空数组的最佳方法
2019/02/13 PHP
PHP与SQL语句写一句话木马总结
2019/10/11 PHP
input 高级限制级用法
2009/03/26 Javascript
探析浏览器执行JavaScript脚本加载与代码执行顺序
2016/01/12 Javascript
AngularJs实现分页功能不带省略号的代码
2016/05/30 Javascript
jquery实现超简单的瀑布流布局【推荐】
2017/03/08 Javascript
关于vue.js v-bind 的一些理解和思考
2017/06/06 Javascript
详解Angular.js中$http拦截器的介绍及使用
2017/07/04 Javascript
无限循环轮播图之运动框架(原生JS实现)
2017/10/01 Javascript
详解ES6语法之可迭代协议和迭代器协议
2018/01/13 Javascript
JavaScript实现连连看连线算法
2019/01/05 Javascript
基于Vue全局组件与局部组件的区别说明
2020/08/11 Javascript
Python对象转JSON字符串的方法
2016/04/27 Python
Python爬虫爬取美剧网站的实现代码
2016/09/03 Python
Python随机数random模块使用指南
2016/09/09 Python
详解Python中for循环是如何工作的
2017/06/30 Python
Python利用turtle库绘制彩虹代码示例
2017/12/20 Python
Python应用库大全总结
2018/05/30 Python
Python File(文件) 方法整理
2019/02/18 Python
python实现趣味图片字符化
2019/04/30 Python
Anaconda和ipython环境适配的实现
2020/04/22 Python
Python3自动生成MySQL数据字典的markdown文本的实现
2020/05/07 Python
解析python 中/ 和 % 和 //(地板除)
2020/06/28 Python
django 将自带的数据库sqlite3改成mysql实例
2020/07/09 Python
python hmac模块验证客户端的合法性
2020/11/07 Python
HTML5去掉输入框type为number时的上下箭头的实现方法
2020/01/03 HTML / CSS
物理系毕业生自荐书范文
2014/02/22 职场文书
2014年师德师风学习材料
2014/05/16 职场文书
个人总结与自我评价
2014/09/18 职场文书
单位单身证明样本
2014/10/11 职场文书
《风不能把阳光打败》读后感3篇
2020/01/06 职场文书