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


Posted in PHP onApril 30, 2016

本文实例讲述了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 相关文章推荐
随时给自己贴的图片加文字的php水印
Mar 16 PHP
解析PHP中一些可能会被忽略的问题
Jun 21 PHP
php中如何防止表单的重复提交
Aug 02 PHP
PHP中Fatal error session_start()错误解决步骤
Aug 05 PHP
为你总结一些php系统类函数
Oct 21 PHP
使用正则去除php代码中的注释方法
Nov 03 PHP
php实现的生成迷宫与迷宫寻址算法完整实例
Nov 06 PHP
php获取微信共享收货地址的方法
Dec 21 PHP
基于swoole实现多人聊天室
Jun 14 PHP
PHP 爬取网页的主要方法
Jul 13 PHP
PHP实现图片压缩
Sep 09 PHP
PHP实现统计代码行数小工具
Sep 19 PHP
Yii2 rbac权限控制操作步骤实例教程
Apr 29 #PHP
PHP.vs.JAVA
Apr 29 #PHP
Yii实现简单分页的方法
Apr 29 #PHP
php实现在站点里面添加邮件发送的功能
Apr 28 #PHP
php提交过来的数据生成为txt文件
Apr 28 #PHP
php生成txt文件实例代码介绍
Apr 28 #PHP
100行PHP代码实现socks5代理服务器
Apr 28 #PHP
You might like
php匹配字符中链接地址的方法
2014/12/22 PHP
php实现根据IP地址获取其所在省市的方法
2015/04/30 PHP
PHP mkdir创建文件夹实现方法解析
2020/11/13 PHP
关于jquery中全局函数each使用介绍
2013/12/10 Javascript
node.js学习总结之调式代码的方法
2014/06/25 Javascript
JavaScript判断表单提交时哪个radio按钮被选中的方法
2015/03/21 Javascript
使用bootstrap typeahead插件实现输入框自动补全之问题及解决办法
2016/07/07 Javascript
JavaScript学习小结之使用canvas画“哆啦A梦”时钟
2016/07/24 Javascript
微信js-sdk界面操作接口用法示例
2016/10/12 Javascript
Bootstrap源码解读下拉菜单(4)
2016/12/23 Javascript
Javasript设计模式之链式调用详解
2018/04/26 Javascript
vue中的$emit 与$on父子组件与兄弟组件的之间通信方式
2018/05/13 Javascript
微信小程序中时间戳和日期的相互转换问题
2018/07/09 Javascript
Vue-cli打包后部署到子目录下的路径问题说明
2020/09/02 Javascript
vue+swiper实现左右滑动的测试题功能
2020/10/30 Javascript
[06:43]2018DOTA2国际邀请赛寻真——VGJ.Thunder
2018/08/11 DOTA
Python selenium 三种等待方式详解(必会)
2016/09/15 Python
Python无损音乐搜索引擎实现代码
2018/02/02 Python
python开发之anaconda以及win7下安装gensim的方法
2019/07/05 Python
python多环境切换及pyenv使用过程详解
2019/09/27 Python
详解有关PyCharm安装库失败的问题的解决方法
2020/02/02 Python
python 使用elasticsearch 实现翻页的三种方式
2020/07/31 Python
使用分层画布来优化HTML5渲染的教程
2015/05/08 HTML / CSS
Under Armour澳大利亚官网:美国知名的高端功能性运动品牌
2018/02/22 全球购物
单位人事专员介绍信
2014/01/11 职场文书
2014年小学元旦活动方案
2014/02/12 职场文书
探亲假请假条
2014/04/11 职场文书
我的未来不是梦演讲稿
2014/09/02 职场文书
房屋过户委托书范本
2014/10/07 职场文书
教育项目合作协议书格式
2014/10/17 职场文书
教师党员承诺书2015
2015/01/21 职场文书
2015年教师节贺卡寄语
2015/03/24 职场文书
2016母亲节感恩话语
2015/12/09 职场文书
庭外和解协议书
2016/03/23 职场文书
mysql查找连续出现n次以上的数字
2022/05/11 MySQL
JS前端使用Canvas快速实现手势解锁特效
2022/09/23 Javascript