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 相关文章推荐
ftp类(myftp.php)
Oct 09 PHP
一个捕获函数输出的函数
Feb 14 PHP
php木马攻击防御之道
Mar 24 PHP
PHP中MD5函数使用实例代码
Jun 07 PHP
PHP 面向对象 final类与final方法
May 05 PHP
PHP的autoload自动加载机制使用说明
Dec 28 PHP
php中处理mysql_fetch_assoc返回来的数组 不用foreach----echo
May 04 PHP
基于PHP常用字符串的总结(待续)
Jun 07 PHP
ThinkPHP跳转页success及error模板实例教程
Jul 17 PHP
php把大写命名转换成下划线分割命名
Apr 27 PHP
php实现三级级联下拉框
Apr 17 PHP
php中__toString()方法用法示例
Dec 07 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中使用preg_replace函数匹配图片并加上链接的方法
2013/02/06 PHP
linux命令之调试工具strace的深入分析
2013/06/03 PHP
PHP附件下载中文名称乱码的解决方法
2015/12/17 PHP
ThinkPHP项目分组配置方法分析
2016/03/23 PHP
各种快递查询--Api接口
2016/04/26 PHP
随机显示经典句子或诗歌的javascript脚本
2007/08/04 Javascript
javascript 一个自定义长度的文本自动换行的函数
2007/08/19 Javascript
关于文本框的一些限制控制总结~~
2010/04/15 Javascript
javascript中关于break,continue的特殊用法与介绍
2012/05/24 Javascript
JS 退出系统并跳转到登录界面的实现代码
2013/06/29 Javascript
JavaScript实现打字效果的方法
2015/07/10 Javascript
javascript求日期差的方法
2016/03/02 Javascript
JavaScript兼容性总结之获取非行间样式案例
2016/08/07 Javascript
前端js实现文件的断点续传 后端PHP文件接收
2016/10/14 Javascript
利用JS屏蔽页面中的Enter按键提交表单的方法
2016/11/25 Javascript
React-native桥接Android原生开发详解
2018/01/17 Javascript
vue组件之间通信实例总结(点赞功能)
2018/12/05 Javascript
简单了解Vue + ElementUI后台管理模板
2020/04/07 Javascript
mpvue 项目初始化及实现授权登录的实现方法
2020/07/20 Javascript
[07:38]2014DOTA2国际邀请赛 Newbee顺利挺进胜者组赛后专访
2014/07/15 DOTA
[17:36]VG战队纪录片
2014/08/21 DOTA
跟老齐学Python之玩转字符串(3)
2014/09/14 Python
Python的ORM框架中SQLAlchemy库的查询操作的教程
2015/04/25 Python
Python实现PS滤镜的旋转模糊功能示例
2018/01/20 Python
Python实现微信消息防撤回功能的实例代码
2019/04/29 Python
Python监控服务器实用工具psutil使用解析
2019/12/19 Python
python 使用递归实现打印一个数字的每一位示例
2020/02/27 Python
python3 通过 pybind11 使用Eigen加速代码的步骤详解
2020/12/07 Python
军校制空专业毕业生自我鉴定
2013/11/16 职场文书
主管竞聘书范文
2014/03/31 职场文书
小学班主任培训方案
2014/06/04 职场文书
厨师长岗位职责范本
2014/08/25 职场文书
领导批评与自我批评范文
2014/10/16 职场文书
2016公司年会通知范文
2015/04/25 职场文书
实习介绍信范文
2015/05/05 职场文书
律师函格式范本
2015/05/27 职场文书