php 判断是rar或是zip文件,关于php解压zip文件的问题

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

如何解压zip文件?

我的思路是这样的:解压文件就是将这个压缩文件夹里的文件取出来,放到指定的地方,而这个过程就是相当但是于将这个文件夹里的文件copy到指定地方。

上代码[code=php]<?php

$dezip=new ZipArchive();//创建ziparchive对象

if(($dezip->open("orzzzzzz.zip"))!=false){//打开压缩文件,若成功打开,执行下述操作,否则输出警告

if(!is_dir("dedir")){//判断有无目标目录

mkdir("dedir",0777);

}

for($i=0;$inumFiles);$i++){//因为dezip文件打开了这个文件,那么dezip这个对象里的方法啊属性啊都为这个文件所用,所以numfiles返回打开的文件里的文件的数目(包括目录)

$filename="orzzzzzz.zip/".$dezip->getNameIndex($i);//为了取得压缩文件里的文件名而建,也为了递归

$path=$dezip->getNameIndex($i);//为了创建目录而建

if(is_dir($filename)){//判断取得的文件是否还是目录

$mcdir="dedir/".$path;//为了递归的实现

mkdir($mcdir,0777);//如果还是目录则继续相应的目标目录创建

opdir($filename,$mcdir);//递归实现非目录文件转移

}

else{

echo $filename;

echo "dedir/".$path;

};

copy($filename,"dedir/".$path)or die("复制失败!");//如果不是目录则复制该文件到目标目录

}

}

else{

echo "打开zip文件错误!";

}

$dezip->close();[/code]

它提示我错误:Warning: copy(orzzzzzz.zip/CESHI.TXT): failed to open stream: No such file or directory in C:\phpweb\Apache24\htdocs\test1.php on line 34复制失败!

也就是在这一行:copy($filename,"dedir/".$path)or die("复制失败!");

但是我调试输出了$filename和"dedir/".$path,他们的路径都没问题。

然后我有测试了非zip文件能不能复制到指定目录里 ,可以!

我就猜是不是copy这个函数不能取zip文件夹里面文件,各位同仁帮我看看呗!

感激感激!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值