




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PclZip介绍PclZip library能够压缩与解压缩Zip格式的压缩档(WinZip、PKZIP);且能对此类类档案进行处理,包括产生压缩档、列出压缩档的内容以及解压缩档案等等。由于能够在伺服器端进行压缩与解压缩的动作,所以相当方便使用。PclZip定义一个PclZip类别,其类别物件可视为一个ZIP档案,亦提供method来进行处理。如何使用PclZip1.基础所有的功能都由pclzip.lib.php这个档案提供,PclZip library可于其首页(/pclzip/index.en.php)下载。所有的PKZIP档案其实就是一个PclZip的类别物件。当产生一个PclZip档案(ie, PclZip类别物件),就会先产生一个压缩档,且档名已经指定,但此压缩档的内容尚未存在:此物件提供了一些public method可用来处理此档案。2.参数每一个method有其各自可使用的参数,包括有必须与非必须的参数:add(dev/file.txt, PCLZIP_OPT_REMOVE_PATH, dev);?上例中的dev/file.txt就是必须参数;PCLZIP_OPT_REMOVE_PATH则为非必须参数。当然有些method也可以只包含非必须的参数:extract(PCLZIP_OPT_PATH, folder, PCLZIP_OPT_REMOVE_PATH, data, PCLZIP_CB_PRE_EXTRACT, callback_pre_extract,);?上例中原本压缩档内档案存放的路径为/data,不过你可以指定解压缩至/folder中。此外,在解压缩之前,会呼叫callback function(callback_pre_extract()),此function可让使用者在解压缩的过程中变更档案存放路径与档名,或是选择某些档案不解压缩。所有可用的非必要参数可参考网址(/pclzip/man/en/index.php)。3.回传值每个method所回传的值可能会不同,将会在每个method中说明。不过大部分的method回传0、error或是阵列。4.错误处理从版本1.3之后,错误处理已经整合至PclZip类别中,当一个method回传错误码,可以得知一些额外的讯息以方便错误处理:* errorName():回传错误名称* errorCode():回传错误码* errorInfo():回传错误的描述接下来会举几个例子来说明如何使用PclZip。PclZip实例1、产生ZIP压缩档PclZip($zipname):为PclZip constructor,$zipname为PKZIP压缩档的档名。主要是产生一个PclZip物件,即一个PKZIP压缩档;但此时,只有压缩档产生出来,并做一些检查(例如是否有开启zlib extension.等),除此之外,并没有做其他动作。create($filelist, optional arguments list):将参数$filelist指定的档案或目录(包含当中所有档案与子目录)加入上述所产生的压缩档中。而非必要的参数则能够修改压缩档内的档案存放路径。此method可用的参数可以参考网志(/pclzip/man/en/index.php)。下面的示例说明如何产生PKZIP压缩档(档名为archive.zip),并将file.txt、data/text.txt以及目录folder(包含当中的档案与子目录)加入刚刚产生的archive.zip中:create(file.txt,data/text.txt,folder); if ($v_list = 0) die(Error : .$archive-errorInfo(true); ?下面的示例说明基本上与上例一样产生archive.zip,但在将file.txt与text.txt压缩于其中时,将路径由data/改为install/ ;因此,在archive.zip中这两个档案的路径会是install/file.txt与install/text.txtcreate(data/file.txt,data/text.txt, PCLZIP_OPT_REMOVE_PATH, data, PCLZIP_OPT_ADD_PATH, install); if ($v_list = 0) die(Error : .$archive-errorInfo(true); ?PclZip实例2、列出压缩档内容listContent( ) :列出压缩档中的内容,包括档案的属性与目录:listContent() = 0) die(Error : .$zip-errorInfo(true); for ($i=0; $isizeof ($list); $i+) for(reset($list$i); $key = key($list$i); next($list$i) echo File $i / $key = .$list$i$key.; echo ; ?上例将会回传结果:File 0 / filename = data/file1.txtFile 0 / stored_filename = data/file1.txtFile 0 / size = 53File 0 / compressed_size = 36File 0 / mtime = 1010440428File 0 / comment =File 0 / folder = 0File 0 / index = 0File 0 / status = okFile 1 / filename = data/file2.txtFile 1 / stored_filename = data/file2.txtFile 1 / size = 54File 1 / compressed_size = 53File 1 / mtime = 1011197724File 1 / comment =File 1 / folder = 0File 1 / index = 1File 1 / status = okPclZip实例3、解压缩档案extract(options list) :解压缩PKZIP中的档案或目录。options list可用的参数可参考网址(/pclzip/man/en/index.php)。这些参数能让使用者在解压缩的时候有更多的选项,譬如指定变更解压缩档案的路径、指定只解压缩某些档案或不解压缩某些档案或者是将档案解压缩成字串输出(可用于readme档)。下例是一个简单的解压缩档案示例,将压缩档archive.zip内的档案解压缩至目前的目录:extract() = 0) die(Error : .$archive-errorInfo(true); ?下例是进阶的解压缩档案使用,archive.zip中所有档案都解压缩于data/中,而特别指明在install/release中的所有档案也直接丢于data/中,而非data/install/ release:extract(PCLZIP_OPT_PATH, data, PCLZIP_OPT_REMOVE_PATH, install/release) = 0) die(Error : .$archive-errorInfo(true); ?相关文档:PclZip官方地址:/pclzip/index.phpPclZip手册地址:http:/www.phpco
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 三招学会海姆立克急救法课件
- 农业生产资源合理利用合作合同
- 老旧供热管网及设施改造工程实施方案(参考模板)
- 高层办公区域管理表格
- 绿色建筑的设计与实施案例
- 生物学分子生物学实验技术测试题库
- 活动参与人数表格-活动数据统计
- 地方特色文化与农民素质提升的结合路径
- 广告创意及投放合同
- 优化科研资源配置提升研究效益
- 眩晕综合症的护理查房
- 2025年上半年广东汕尾市城区招聘政府聘员69人易考易错模拟试题(共500题)试卷后附参考答案
- 2025版MCN公司艺人合作签约合同范本3篇
- GB/T 45098-2024营运纯电动汽车换电服务技术要求
- 2025年中考英语话题作文范文20篇
- 公交车驾驶员安全培训
- 山西省云时代技术有限公司笔试题库
- 龙鑫煤矿矿井概况-2
- 国际合作项目管理制度
- 大模型原理与技术-课件 chap14 基于大模型的航空航天装备制造
- 【MOOC】线性代数-同济大学 中国大学慕课MOOC答案
评论
0/150
提交评论