当前位置:Gxlcms > PHP教程 > 【菜鸟】pclzip类库解压文件不成功

【菜鸟】pclzip类库解压文件不成功

时间:2021-07-01 10:21:17 帮助过:17人阅读

这两天要给自己的服务器做个在线升级的功能,流程就是客户端向主机发送请求,主机验证了客户端的身份后把升级包的地址和文件名发回给客户端,然后客户端把这个包写到本地的一个文件夹,最后通过解压这个文件夹覆盖本地服务器的文件完成更新。
在解压这一步的时候用的是pclzip的类库,刚看的时候感觉语法挺简单的,可是就这两三行的代码,就是死活不起作用。第一次使用pclzip,百度了好久好像都没有人出现过类似的情况啊,所以只能过来发帖求助各位大大了。

这个是我操作的一部分代码
$updatenowinfo = getremotecontent($updatehosturl);		//$updatenowinfo = file_get_contents($updatehosturl);        if (strstr($updatenowinfo, 'zip')){			$pathurl = file_get_contents($updatehost . '?g=System&m=Verify&a=download&f=' . $updatenowinfo);			$resUrl = 'http://www.wqxiu.com';            $pathurl = $resUrl.$pathurl.$updatenowinfo;			echo $pathurl;            $updatedir = './Conf/logs/Temp/update';			$filepath = $updatedir.'/'.$updatenowinfo;            delDirAndFile($updatedir);			mkdirs($updatedir);			//下载补丁            //if(getremotefile($pathurl,$updatenowinfo,$updatedir)){				$isgot = get_file($pathurl, $updatenowinfo, $updatedir);			if($isgot){				$updatezip = $updatedir . '/' . $updatenowinfo;				require_once('pclzip.lib.php');											$thisfolder = new PclZip('update.zip');				var_dump($updatezip);				$isextract = $thisfolder->extract();


这个是后来为了方便研究这个问题单独写出来的代码
public function test2(){		require_once('pclzip.lib.php');		$archive = new PclZip('archive.zip');        $v_list = $archive->create('update.class.php,index.html');			echo $v_list;		$thisfolder = new PclZip('http://www.wqxiu.com/Uploads/resource/V4.7_V4.8updatepackage.zip');		$isextract = $thisfolder->extract();		}


回复讨论(解决方案)

若只是解压的话,可以用php内置的ZipArchive


你先把这个问题解决了再说

可以直接调用linux命令unzip执行。
unzip -d path o.zip
o.zip 为压缩包
path为解压到的目录


你先把这个问题解决了再说

网址是我本地的,后面不知道为什么莫名其妙地又可以了……

人气教程排行