为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

PHP解压ZIP。与PHP压缩ZIP

2017-11-14 5页 doc 19KB 39阅读

用户头像

is_995397

暂无简介

举报
PHP解压ZIP。与PHP压缩ZIPPHP解压ZIP。与PHP压缩ZIP 网页编程中,不乏会遇到一些ZIP文件压缩和解压的问题~ 下载地址:PclZip v2.8.2 所有的功能都由pclzip.lib.php这个程序来提供的,功能非常之强大。能对此类类档案进行处理,包括产生压缩档、列出压缩档的内容以及解压缩档案等等。由于能够在伺服器端进行压缩与解压缩的动作,所以相当方便使用 首先引入: ?PHP require_once('pclzip.lib.php');$archive=new PclZip("archive.zip");? 此物件提供了一些p...
PHP解压ZIP。与PHP压缩ZIP
PHP解压ZIP。与PHP压缩ZIP 网页编程中,不乏会遇到一些ZIP文件压缩和解压的问题~ 下载地址:PclZip v2.8.2 所有的功能都由pclzip.lib.php这个程序来提供的,功能非常之强大。能对此类类档案进行处理,包括产生压缩档、列出压缩档的内容以及解压缩档案等等。由于能够在伺服器端进行压缩与解压缩的动作,所以相当方便使用 首先引入: ?PHP require_once('pclzip.lib.php');$archive=new PclZip("archive.zip");? 此物件提供了一些public method可用来处理此档案。 ?PHP require_once('pclzip.lib.php');$archive=new PclZip('archive.zip');$v_list=$archive-add('dev/file.txt',PCLZIP_OPT_REMOVE_PATH,'dev');? 2.参数 每一个method有其各自可使用的参数,包括有必须与非必须的参数: ?PHP require_once('pclzip.lib.php');$archive=new PclZip('archive.zip');$v_list=$archive-add('dev/file.txt',PCLZIP_OPT_REMOVE_PATH,'dev');? 上例中的'dev/file.txt'就是必须参数;'PCLZIP_OPT_REMOVE_PATH'则为非必须参数。当然有些method也可以只包含非必须的参数: ?PHP$list=$archive- 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可让使用者在解压缩的过程中变更档案存放路径与档名,或是选择某些档案不解压缩。 所有可用的非必要参数可参考网址 (www.phpconcept.net/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可用的参数可以参考网志 (www.phpconcept.net/pclzip/man/en/index.php)。 下面的示例说明如何产生PKZIP压缩档(档名为archive.zip),并将file.txt、data/text.txt以及目录folder(包含当中的档案与子目录)加入刚刚产生的archive.zip中: 用法一: ?include_once('pclzip.lib.php');$archive=new PclZip('archive.zip');$v_list=$archive-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.txt ?include_once('pclzip.lib.php');$archive=new PclZip('archive.zip');$v_list=$archive-create('data/file.txt,data/text.txt',PCLZIP_OPT_REMOVE_PATH,'data',PC LZIP_OPT_ADD_PATH,'install');if($v_list==0){die("Error:".$archive-errorInfo(true));}? PclZip实例2、列出压缩档内容 listContent():列出压缩档中的内容,包括档案的属性与目录: ?PHP include_once('pclzip.lib.php');$zip=new PclZip("test.zip"); if(($list=$zip-listContent())==0){die("Error:".$zip- errorInfo(true));}for($i=0;$i sizeof($list); $i++){for(reset($list[$i]);$key=key($list[$i]); next($list[$i])){echo"File$i/[$key]=".$list[$i][$key]."br";}echo"br/ ";}? 上例将会回传结果: File 0/[filename]=data/file1.txt File 0/[stored_filename]=data/file1.txt File 0/[size]=53 File 0/[compressed_size]=36 File 0/[mtime]=1010440428 File 0/[comment]= File 0/[folder]=0 File 0/[index]=0 File 0/[status]=ok File 1/[filename]=data/file2.txt File 1/[stored_filename]=data/file2.txt File 1/[size]=54 File 1/[compressed_size]=53 File 1/[mtime]=1011197724 File 1/[comment]= File 1/[folder]=0 File 1/[index]=1 File 1/[status]=ok PclZip实例 3、解压缩档案 extract([options list]):解压缩PKZIP中的档案或目录。 [options list]可用的参数可参考网址 (www.phpconcept.net/pclzip/man/en/index.php)。这些参数能让使用者在解 压缩的时候有更多的选项,譬如指定变更解压缩档案的路径、指定只解压缩某 些档案或不解压缩某些档案或者是将档案解压缩成字串输出(可用于readme档)。 下例是一个简单的解压缩档案示例,将压缩档archive.zip内的档案解压 缩至目前的目录: ?PHP require_once('pclzip.lib.php');$archive=new PclZip('archive.zip');if($archive-extract()==0){die("Error: ".$archive-errorInfo(true));}? 下例是进阶的解压缩档案使用,archive.zip中所有档案都解压缩于data/ 中,而特别指明在install/release中的所有档案也直接丢于data/中,而非 data/install/release: ?PHP include('pclzip.lib.php');$archive=new PclZip('archive.zip');if($archive- extract(PCLZIP_OPT_PATH,'data',PCLZIP_OPT_REMOVE_PATH,'install/releas e')==0){die("Error:".$archive-errorInfo(true));}?
/
本文档为【PHP解压ZIP。与PHP压缩ZIP】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索