php简单创建zip压缩文件的方法

 更新时间:2016年04月30日 08:55:32   作者:懒人  
这篇文章主要介绍了php简单创建zip压缩文件的方法,实例分析了php基于ZipArchive实现文件压缩的相关技巧,需要的朋友可以参考下

本文实例讲述了php简单创建zip压缩文件的方法。分享给大家供大家参考,具体如下:

/* creates a compressed zip file */
function create_zip($files = array(),$destination = '',$overwrite = false) {
  //if the zip file already exists and overwrite is false, return false
  if(file_exists($destination) && !$overwrite) { return false; }
  //vars
  $valid_files = array();
  //if files were passed in...
  if(is_array($files)) {
    //cycle through each file
    foreach($files as $file) {
      //make sure the file exists
      if(file_exists($file)) {
        $valid_files[] = $file;
      }
    }
  }
  //if we have good files...
  if(count($valid_files)) {
    //create the archive
    $zip = new ZipArchive();
    if($zip->open($destination,$overwrite ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE) !== true) {
      return false;
    }
    //add the files
    foreach($valid_files as $file) {
      $zip->addFile($file,$file);
    }
    //debug
    //echo 'The zip archive contains ',$zip->numFiles,' files with a status of ',$zip->status;
    //close the zip -- done!
    $zip->close();
    //check to make sure the file exists
    return file_exists($destination);
  }
  else
  {
    return false;
  }
}

使用方法:

$files_to_zip = array(
  'preload-images/1.jpg',
  'preload-images/2.jpg',
  'preload-images/5.jpg',
  'kwicks/ringo.gif',
  'rod.jpg',
  'reddit.gif'
);
//if true, good; if false, zip creation failed
$result = create_zip($files_to_zip,'my-archive.zip');

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP操作zip文件及压缩技巧总结》、《php文件操作总结》、《php正则表达式用法总结》、《PHP+ajax技巧与应用小结》、《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

  • php数组随机排序实现方法

    php数组随机排序实现方法

    这篇文章主要介绍了php数组随机排序实现方法,涉及php数组随机排序函数shuffle的相关使用技巧,需要的朋友可以参考下
    2015-06-06
  • PHP获取真实客户端的真实IP

    PHP获取真实客户端的真实IP

    本文主要介绍了PHP获取真实客户端的真实IP(REMOTE_ADDR,HTTP_CLIENT_IP,HTTP_X_FORWARDED_FOR)的方法,具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03
  • PHP+Mysql+jQuery实现发布微博程序 jQuery篇

    PHP+Mysql+jQuery实现发布微博程序 jQuery篇

    我们在QQ个人中心或者新浪微博等网站上可以看到一个发表话题的应用
    2011-10-10
  • php self,$this,const,static,->的使用

    php self,$this,const,static,->的使用

    用php这么久了,惭愧的是,原来自己还一直没分清楚这几个关键字使用方法。
    2009-10-10
  • php判断两个浮点数是否相等的方法

    php判断两个浮点数是否相等的方法

    这篇文章主要介绍了php判断两个浮点数是否相等的方法,涉及php操作浮点数的技巧,比较实用,需要的朋友可以参考下
    2015-03-03
  • php简单smarty入门程序实例

    php简单smarty入门程序实例

    这篇文章主要介绍了php简单smarty入门程序,实例分析了smarty模板的配置与使用技巧,需要的朋友可以参考下
    2015-06-06
  • 迅速确定php多维数组的深度的方法

    迅速确定php多维数组的深度的方法

    如何快速的确定一个数组深度,下面有个不错的方法可以迅速确定php多维数组的深度,感兴趣的朋友可以参考下
    2014-01-01
  • 应用开发中涉及到的css和php笔记分享

    应用开发中涉及到的css和php笔记分享

    最近一周使用SAE开发一个简单的微博应用。应用本身很简单,使用php算法可以轻松实现。但是在调用新浪API的时候遇到很多各种各样的麻烦。应用到现在还有些不稳定。
    2011-08-08
  • php中简单的对称加密算法实现

    php中简单的对称加密算法实现

    最近突发奇想要往数据库里保存一些机密的东西,然后就想着怎么让别人即使进入到了数据库也看不懂存储的是什么,那么只有加密了;可是我们自己还要看呢,那只能找一些对称加密的算法了,我们想看的时候再解密回来。下面就介绍了php中简单的对称加密算法实现。
    2017-01-01
  • PHP连接MSSQL2008/2005数据库(SQLSRV)配置实例

    PHP连接MSSQL2008/2005数据库(SQLSRV)配置实例

    这篇文章主要介绍了PHP连接MSSQL2008/2005数据库(SQLSRV)配置方法,实例讲述了完整的连接与配置过程,并提供了具体的扩展文件下载与测试代码,需要的朋友可以参考下
    2014-10-10

最新评论