php打包压缩文件之PclZip方法

一月 11
磊子 2012年 暂无评论

最近一直在处理php相关的项目,所以今天把自己了解的知识写出来,给大家分享一下,也给自己做个备份。今儿主要是说下PclZip压缩文件的方法还有一种是ZipArchive类压缩方法这个将在下一篇文章说到。

使用PclZIp(zip格式)压缩,首先需要下载它的包文件。PclZip功能还是慢强大的,它可以进行压缩和解压,以及一些添加和删除的类的方法等等。当然了这些内容我们都可以在网上查找的到,没必要都得记住。我们只要在需要使用的时候自己可以很快的在网上找到使用方法就可以了。首先我们需要的就是要将下载的库文件进行引入,如

<?php include('pclzip/pclzip.lib.php');  ?>

//括号里面的地址改成自己的pclzip.lib.php 文件所在地址,它的所有的功能都在pclzip.lib.php里面

引入之后我们就可以进行使用了,下面是我使用时简单写的一个方法。

<?php

    $zipname = "test.zip"; //压缩包的名称
    $zipnames = '/zipfiles/'.$zipname; //压缩包所在路径
    $z = new PclZip($zipnames);	//实例化这个PclZip类
    $v_list = $z->create('file.txt,data/text.txt,folder'); //将文件进行压缩
    if ($v_list == 0)
    {
      die("Error : ".$archive->errorInfo(true));  //如果有误,提示错误信息。
    }

?>

这个一个简单的zip压缩就做好了,在这个方法中我们主要就是使用了PclZip里面的PclZip类以及它里面创建压缩包的方法create。从上面的例子我们可以看到下面这个内容

<?php  PclZip($zip_filename);  ?> 

//里面是该压缩包的名称以及所在路径。并不是把名称写上就可以了。如果路径不对是无法找到的。
<?php  PclZip::create($filelist, [optional arguments]);  ?>

//create方法来创建压缩包。

//$filelist可以用数组包含文件的名称和文件夹名称或者是一个字符串来包含.

//如果是多个文件的话可以用逗号来隔开,如上面的例子。

/*****  optional arguments 可选参数 ******/
/*
1.PCLZIP_OPT_REMOVE_PATH

移除部份的目录路径,例如原本档案所在的目录为aa/bb/cc/test.test.txt,但是希望压缩或解压缩后的路径为cc/test.txt,就可以使用PCLZIP_OPT_REMOVE_PATH,"aa /bb"。可用于create()、add()、extract()、extractByIndex()。 (与PCLZIP_OPT_REMOVE_ALL_PATH一起用的时候会被自动忽略) 

2.PCLZIP_OPT_REMOVE_ALL_PATH

移除所有档案的目录,所有档案都会被解压缩或压缩到当前或是指定的目录中,请注意如果有不同目录的相同名称档案,使用此参数时会被覆盖,此参数不需要引数。可用于create()、add()、extract()、extractByIndex()。

3.PCLZIP_OPT_ADD_PATH

增加一个目录。可用于create()、add()、extract()。 (使用于create()时,是把要压缩的档案放进这个目录中再压缩,使用于extract()时,是在要解压缩的路径中增加此目录,并解压缩到此目录中)。

4.PCLZIP_OPT_ADD_COMMENT

建立压缩档时增加一个注解,如果原本已经有注解的话,将会接在后面。

5.PCLZIP_OPT_COMMENT

建立压缩档时增加一个注解,如果原本已经有注解的话,将会直接覆盖过去。

......

*/

以上只是PclZip的其中一种方法,大家感兴趣的可以去下面网址查看。

官方网站: http://www.phpconcept.net/pclzip

下载地址:http://www.phpconcept.net/pclzip/pclzip-downloads

用户指南:http://www.phpconcept.net/pclzip/user-guide/22

» 版权所有©转载必须以链接形式注明作者和原始出处:磊子的博客 » php打包压缩文件之PclZip方法
» 地址:( Ctrl+C 复制 )
» 如果对本站感兴趣,请到网站右下方订阅本站,将为你带来更多精彩和实用的文章
» 如果您对这篇文章感兴趣,不妨小小的 捐助(Donate)一下博主吧,不管多少都是对博主最大的支持和鼓励哟,博主-磊子感谢大家的支持!!!

说点什么吧




wireless earbuds moscow mule mugs bluetooth speakers waterproof camera best wireless earbuds best vacuum cleaner best drugstore foundation best dishwasher best waist trainer wireless headphones best vacuum 0594918 best bluetooth earbuds waterproof bluetooth speaker tattoo cover up action camera
订阅本站