Home >Backend Development >PHP Tutorial >【菜鸟】pclzip类库解压文件不成功

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

WBOY
WBOYOriginal
2016-06-23 13:31:231406browse

这两天要给自己的服务器做个在线升级的功能,流程就是客户端向主机发送请求,主机验证了客户端的身份后把升级包的地址和文件名发回给客户端,然后客户端把这个包写到本地的一个文件夹,最后通过解压这个文件夹覆盖本地服务器的文件完成更新。
在解压这一步的时候用的是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为解压到的目录


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

网址是我本地的,后面不知道为什么莫名其妙地又可以了……
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn