全部博文(155)
分类:
2010-05-17 17:23:13
CODE:
require_once('pclzip.lib.php');
$archive = new PclZip('archive.zip');
if ($archive->extract() == 0) { /*解压缩路径跟原始档相同路径*/
die("Error : ".$archive->errorInfo(true));
}
?>
当然也可以指定解压缩路径,像这样
CODE:
include('pclzip.lib.php');
$archive = new PclZip('archive.zip');
if ($archive->extract(PCLZIP_OPT_PATH, 'data') { /*data换成其他路径即可*/
die("Error : ".$archive->errorInfo(true));
}
?>
如果再写一支自动建立目录的script会更好,因為函式本身不会判断压缩档裡第一层是档案还是资料夹(这我想其他相关函式也做不到吧!!!)CODE:
$rar_file = rar_open('example.rar') or die("Failed to open Rar archive");
/*example.rar换成其他档案即可*/
$entries_list = rar_list($rar_file);
print_r($entries_list);
?>
比较要注意的,若是用 port 安装话,版本会比较新(官网只有到0.3.1,port 安装话已经到0.3.4),所以用法上会有些出入CODE:
$rar_file = rar_open('example.rar') or die("Can't open Rar archive");
/*example.rar换成其他档案即可*/
$entries = rar_list($rar_file);
foreach ($entries as $entry) {
$entry->extract('/dir/extract/to/'); /*/dir/extract/to/换成其他路径即可*/
}
rar_close($rar_file);
?>
跟Zip部分一样,若搭配自动建立目录会更好