使用虚拟主机进行文件上传时最常用的工具莫过于FTP了,但是使用FTP有一个弊端就是文件太多时上传或 下载速度比较慢,如果上传时将文件打包,上传后在空间解压缩,同样下载前将文件打包压缩以压缩包的形式下载,这样速度就快多了。其实PHP就可以做到这一 点,将文件压缩成zip格式并且可以解压缩。我使用了很多发现最好用的还是pclzip,pclzip可以将文件或文件夹压缩成zip格式的压缩文件。下 面给出几个例子:
压缩文件:
<?php
require_once('pclzip.lib.php');
$zip = new PclZip('./test.zip'); //生成压缩文件的路径
$arr = array(
'./a',
'./b.txt',
'./x'
);
$v_list = $zip->add($arr);
if ($v_list == 0) {
die("Error : ".$archive->errorInfo(true));
}else{
echo 'success';
}
?>
上面代码中add方法表示添加文件或文件夹,参数是一个文件列表,可以是数组的形式。
如果要压缩一个文件夹还可以使用create方法。
解压文件:
- <?php
- require_once('pclzip.lib.php');
- $zip = new PclZip('./test.zip');//压缩文件的路径
- if ($zip->extract(PCLZIP_OPT_PATH, './outpath') == 0) {
- die("Error : ".$archive->errorInfo(true));
- }else{
- echo 'extract success';
- }
- ?>