• 技术文章 >php教程 >php手册

    php文件在线压缩程序类(1/2)

    2016-06-13 11:24:51原创605

    php文件在线压缩程序类 提供一款超完美的php文件在线压缩程序,原理很简单就是把文件以二进制形式保存了,以前用过利用rar的内核程序,这是php自带的压缩功能。

    php教程文件在线压缩程序类
    提供一款超完美的php文件在线压缩程序,原理很简单就是把文件以二进制形式保存了,以前用过利用rar的内核程序,这是php自带的压缩功能。
    */

    set_time_limit(0);
    class phpzip{

    var $file_count = 0 ;
    var $datastr_len = 0;
    var $dirstr_len = 0;
    var $filedata = ''; //该变量只被类外部程序访问
    var $gzfilename;
    var $fp;
    var $dirstr='';

    /*
    返回文件的修改时间格式.
    只为本类内部函数调用.
    */
    function unix2dostime($unixtime = 0) {
    $timearray = ($unixtime == 0) ? getdate() : getdate($unixtime);

    if ($timearray['year'] < 1980) {
    $timearray['year'] = 1980;
    $timearray['mon'] = 1;
    $timearray['mday'] = 1;
    $timearray['hours'] = 0;
    $timearray['minutes'] = 0;
    $timearray['seconds'] = 0;
    }

    return (($timearray['year'] - 1980) << 25) | ($timearray['mon'] << 21) | ($timearray['mday'] << 16) |
    ($timearray['hours'] << 11) | ($timearray['minutes'] << 5) | ($timearray['seconds'] >> 1);
    }
    /*
    初始化文件,建立文件目录,
    并返回文件的写入权限.
    */
    function startfile($path = 'faisun.zip'){
    $this->gzfilename=$path;
    $mypathdir=array();
    do{
    $mypathdir[] = $path = dirname($path);
    }while($path != '.');
    @end($mypathdir);
    do{
    $path = @current($mypathdir);
    @mkdir($path);
    }while(@prev($mypathdir));

    if($this->fp=@fopen($this->gzfilename,"w")){
    return true;
    }
    return false;
    }
    /*
    添加一个文件到 zip 压缩包中.
    */

    1 2

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:php 问问采集代码 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • php mysql 数据库类• PHP代码:Http断点续传的实现例子• 基于php实现七牛抓取远程图片• php5.3,5.4,5.5,5.6 中新特性• ThinkPHP控制器里javascript代码不能执行的解决方法,thinkphpjavascript
    1/1

    PHP中文网