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 中的面向对象编程:通向大型 PHP 工程的办法
Dec 03 PHP
PHP截取汉字乱码问题解决方法mb_substr函数的应用
Mar 30 PHP
PHP 日期加减的类,很不错
Oct 10 PHP
PHP获取服务器端信息的方法
Nov 28 PHP
护卫神php套件 php版本升级方法(php5.5.24)
May 10 PHP
PHP实现过滤掉非汉字字符只保留中文字符
Jun 04 PHP
PHP实现简易blog的制作
Oct 24 PHP
php实现水印文字和缩略图的方法示例
Dec 29 PHP
PHP输出多个元素的排列或组合的方法
Mar 14 PHP
PDO::exec讲解
Jan 28 PHP
PHP与Perl之间知识点区别整理
Mar 19 PHP
定位地理位置PHP判断员工打卡签到经纬度是否在打卡之内
May 23 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 is_file 判断给定文件名是否为一个正常的文件
2010/05/10 PHP
Notice: Undefined index: page in E:\PHP\test.php on line 14
2010/11/02 PHP
php中\r \r\n \t的区别示例介绍
2014/02/08 PHP
Thinkphp搜索时首页分页和搜索页保持条件分页的方法
2014/12/05 PHP
php实现读取内存顺序号
2015/03/29 PHP
php微信公众号开发之关键词回复
2018/10/20 PHP
tp5(thinkPHP5)框架连接数据库的方法示例
2018/12/24 PHP
jquery中的on方法使用介绍
2013/12/29 Javascript
js日期、星座的级联显示代码
2014/01/23 Javascript
JavaScript设计模式之原型模式(Object.create与prototype)介绍
2014/12/28 Javascript
JavaScript下的时间格式处理函数Date.prototype.format
2016/01/27 Javascript
Bootstrap每天必学之警告框插件
2016/04/26 Javascript
基于jQuery ligerUI实现分页样式
2016/09/18 Javascript
简单说说angular.json文件的使用
2018/10/29 Javascript
cocos2dx+lua实现橡皮擦功能
2018/12/20 Javascript
使用 Vue cli 3.0 构建自定义组件库的方法
2019/04/30 Javascript
使用jQuery实现掷骰子游戏
2019/10/24 jQuery
[38:30]2014 DOTA2国际邀请赛中国区预选赛 LGD-GAMING VS CIS 第一场2
2014/05/24 DOTA
在树莓派2或树莓派B+上安装Python和OpenCV的教程
2015/03/30 Python
Python简单生成随机姓名的方法示例
2017/12/27 Python
python实现NB-IoT模块远程控制
2018/06/20 Python
Python动态导入模块的方法实例分析
2018/06/28 Python
Python小工具之消耗系统指定大小内存的方法
2018/12/03 Python
解析Python3中的Import
2019/10/13 Python
python实现差分隐私Laplace机制详解
2019/11/25 Python
python中数字是否为可变类型
2020/07/08 Python
用 python 进行微信好友信息分析
2020/11/28 Python
CSS3制作炫酷带方向感应的鼠标滑过图片3D动画
2016/03/16 HTML / CSS
世界上最大的折扣香水店:FragranceNet.com
2016/10/26 全球购物
Hoover胡佛官网:美国吸尘器和洗地机品牌
2019/01/09 全球购物
改变生活的男士内衣:SAXX Underwear
2019/08/28 全球购物
建筑设计所实习生自我鉴定
2013/09/25 职场文书
2014年毕业演讲稿范文
2014/05/13 职场文书
2016教师节感恩话语
2015/12/09 职场文书
Axios代理配置及封装响应拦截处理方式
2022/04/07 Vue.js
Python语法学习之进程的创建与常用方法详解
2022/04/08 Python