php打包压缩文件之ZipArchive方法用法分析


Posted in PHP onApril 30, 2016

本文实例讲述了php打包压缩文件之ZipArchive方法用法。分享给大家供大家参考,具体如下:

前面说到了php打包压缩文件之PclZip方法,今天来说下另一种更为简单的方法,使用ZipArchive来压缩文件。这个是php的扩展类,自php5.2版本以后就已经支持这个扩展,如果你在使用的时候出现错误,查看下php.ini里面的extension=php_zip.dll前面的分号有没有去掉,然后再重启Apache这样才能使用这个类库。

使用ZipArchive压缩文件是非常简单的,php官网已经给我提供了很多相关示例,大家可以看下 http://www.php.net/manual/zh/class.ziparchive.php,例如:

<?php
$zip = new ZipArchive; //首先实例化这个类
if ($zip->open('test.zip') === TRUE) { //然后查看是否存在test.zip这个压缩包
  $zip->addFile('too.php');
  $zip->addFile('test.php'); //将too.php和test.php两个文件添加到test.zip压缩包中
  $zip->close(); //关闭
  echo 'ok';
} else {
  echo 'failed';
}
?>

下面是一些参数说明:

<?php
/******** ziparchive 可选参数 *******/
/*
1.ZipArchive::addEmptyDir
添加一个新的文件目录
2.ZipArchive::addFile 
将文件添加到指定zip压缩包中。
3.ZipArchive::addFromString 
添加的文件同时将内容添加进去
4.ZipArchive::close 
关闭ziparchive
5.ZipArchive::extractTo 
将压缩包解压
6.ZipArchive::open
打开一个zip压缩包
7.ZipArchive::getStatusString
返回压缩时的状态内容,包括错误信息,压缩信息等等
8.ZipArchive::deleteIndex
删除压缩包中的某一个文件,如:deleteIndex(0)删除第一个文件
9.ZipArchive::deleteName
删除压缩包中的某一个文件名称,同时也将文件删除。
......
*/
?>

总之只要你的php5.2版本以上,使用ZipArchive来进行文件压缩还是比较方便的。具体的和PclZip哪一个运行速度比较快,这个磊子还没有做过测试,大家感兴趣的可以折腾折腾。

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

PHP 相关文章推荐
PHP开发中四种查询返回结果分析
Jan 02 PHP
php 目录与文件处理-郑阿奇(续)
Jul 04 PHP
php setcookie函数的参数说明及其用法
Apr 20 PHP
PHP异常Parse error: syntax error, unexpected T_VAR错误解决方法
May 06 PHP
php调用nginx的mod_zip模块打包ZIP文件
Jun 11 PHP
PHP中cookie和session的区别实例分析
Aug 28 PHP
PHP概率计算函数汇总
Sep 13 PHP
浅谈php+phpStorm+xdebug配置方法
Sep 17 PHP
浅谈PHP链表数据结构(单链表)
Jun 08 PHP
万能的php分页类
Jul 06 PHP
php微信公众号开发之关键词回复
Oct 20 PHP
PHP unset函数原理及使用方法解析
Aug 14 PHP
php使用pclzip类实现文件压缩的方法(附pclzip类下载地址)
Apr 30 #PHP
php简单实现数组分页的方法
Apr 30 #PHP
php简单创建zip压缩文件的方法
Apr 30 #PHP
Yii2 rbac权限控制操作步骤实例教程
Apr 29 #PHP
PHP.vs.JAVA
Apr 29 #PHP
Yii实现简单分页的方法
Apr 29 #PHP
php实现在站点里面添加邮件发送的功能
Apr 28 #PHP
You might like
php 来访国内外IP判断代码并实现页面跳转
2009/12/18 PHP
简单的PHP多图上传小程序代码
2011/07/17 PHP
PHP定时执行任务实现方法详解(Timer)
2015/07/30 PHP
php基于curl实现的股票信息查询类实例
2016/11/11 PHP
laravel 模型查询按照whereIn排序的示例
2019/10/16 PHP
PHP连接MySQL数据库的三种方式实例分析【mysql、mysqli、pdo】
2019/11/04 PHP
Dojo之路:如何利用Dojo实现Drag and Drop效果
2007/04/10 Javascript
jquery提交form表单简单示例分享
2014/03/03 Javascript
Javascript 引擎工作机制详解
2016/11/30 Javascript
angular中不同的组件间传值与通信的方法
2017/11/04 Javascript
Vue修改mint-ui默认样式的方法
2018/02/03 Javascript
vue中实现在外部调用methods的方法(推荐)
2018/02/08 Javascript
JS构造一个html文本内容成文件流形式发送到后台
2018/07/31 Javascript
python在命令行下使用google翻译(带语音)
2014/01/16 Python
pygame学习笔记(1):矩形、圆型画图实例
2015/04/15 Python
Python获取SQLite查询结果表列名的方法
2017/06/21 Python
使用Python+Splinter自动刷新抢12306火车票
2018/01/03 Python
python验证码识别实例代码
2018/02/03 Python
Python 实现平台类游戏添加跳跃功能
2020/03/27 Python
matplotlib.pyplot.plot()参数使用详解
2020/07/28 Python
详解基于Scrapy的IP代理池搭建
2020/09/29 Python
python小技巧——将变量保存在本地及读取
2020/11/13 Python
使用phonegap进行本地存储的实现方法
2017/03/31 HTML / CSS
HTML5获取当前地理位置并在百度地图上展示的实例
2020/07/10 HTML / CSS
英国羊绒服装购物网站:Pure Collection
2018/10/22 全球购物
回馈慈善的设计师太阳镜:DIFF eyewear
2019/10/17 全球购物
葡萄牙航空官方网站:TAP Air Portugal
2019/10/31 全球购物
研究生自我鉴定范文
2013/10/30 职场文书
党课学习思想汇报
2014/01/02 职场文书
《草原》教学反思
2014/02/15 职场文书
植树造林的宣传标语
2014/06/23 职场文书
党员志愿者活动总结
2014/06/26 职场文书
师德师风个人整改措施
2014/10/27 职场文书
2015出纳试用期工作总结
2014/12/12 职场文书
党支部承诺书
2015/01/20 职场文书
2015年招生工作总结
2015/05/04 职场文书