今天搞个压缩包,死活解压不出来,文件名还给我整乱套,真是气死我!
我以为是压缩包本身的问题,下下来打开一看,里面的文件好好的,没毛病。然后我就用平时常用的解压软件,右键,“解压到当前文件夹”,结果,空的!啥也没有!再试一次,“解压到XXX”,还是空的!我当时就懵,这是什么鬼?
我开始怀疑是不是我的解压软件出问题,换一个,还是不行。我又去网上搜,看看有没有人遇到过类似的情况。结果还真有!有人说可能是文件名有中文或者特殊字符导致的,让我试试改个名字。
我把压缩包的名字改成简单的字母加数字,再解压,你猜怎么着?还是不行!我真是要崩溃!
后来我看到有人提到一个叫 extractTo 的东西,说这玩意儿有时候会抽风,解压不出来东西。我之前都没听说过这个词,也没用过。不过死马当活马医,我决定试试。
具体怎么用?我也不知道!我只能继续在网上搜,看有没有相关的教程。找半天,终于找到一段代码,大概长这样:
$zip = new ZipArchive;
$res = $zip->open('压缩包的名字.zip');
if ($res === TRUE) {
-
$zip->extractTo('要解压到的文件夹');
-
$zip->close();
我照着这个代码,改改,把里面的压缩包名字和文件夹路径换成我自己的,然后运行一下。
你还真别说,这回居然成功!文件都乖乖地解压出来,文件名也没乱!
虽然问题解决,但我还是没搞明白,为啥平时用的解压软件不行,非得用这个 extractTo 才行。这玩意儿到底是个我感觉它就像个黑盒子,我只知道怎么用,但不知道它里面是怎么运作的。算,能用就行,我也不想深究,反正以后遇到类似的问题,我就直接用这个方法!
这回的经历真是让我学到,遇到问题不能死磕,要多试试不同的方法,说不定就瞎猫碰上死耗子,问题就解决!
免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。