PHP解压缩zip文件,使用类ZipArchiv

使用条件

1.首先要保证php版本(>php 5.2)

2.保证php_zip.dll 扩展可用,打开php.ini配置文件找到并修改,然后重启服务器(apache等,千万别往)


下面介绍一下最基本用法,其他的可以查阅官网

mixed ZipArchive::open ( string $filename [, int $flags ] )  ,打开一个zip文件用于操作

第2个参数讲解 
ZIPARCHIVE::OVERWRITE    总是创建一个新的文件,如果指定的zip文件存在,则会覆盖掉 
ZIPARCHIVE::CREATE        如果指定的zip文件不存在,则新建一个 
ZIPARCHIVE::EXCL        如果指定的zip文件存在,则会报错    

bool ZipArchive::extractTo( string $destination [, mixed $entries ] ) ,解压zip文件


假设你有一个test.zip文件

<?php 
$zip = new ZipArchive; 
$res = $zip->open('test.zip'); 
if ($res === TRUE) { 
    echo 'ok'; 
    //解压缩到test文件夹 
    $zip->extractTo('test'); 
    $zip->close(); 
} else { 
    echo 'failed, code:' . $res; 
} 
?> 


这样解压出来的文件目录是test,有的时候你想用别的目录替代test,可以这么做

<?php 
$zip = new ZipArchive;
$res = $zip->open('test.zip'); 
if ($res === TRUE) { 
for($i = 0; $i < $zip->numFiles; $i++) {
    $filename = $zip->getNameIndex($i);
    $fileinfo = pathinfo($filename);
    copy("zip://".$file."#".$filename, $path.$fileinfo['basename']);
 }
    $zip->close();
}

$path为需要解压到的路径,需要注意的目录的权限

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值