PHP 的解压缩ZipArchive中的extractTo()方法 LINUX+nginx环境中解压zip时文件丢失的问题

PHP 的解压缩ZipArchive中的extractTo()方法 LINUX+nginx环境中解压zip时文件丢失的问题

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

      在项目中要用ZipArchive解压ZIP文件,起初測试环境在WINDOWS平台中,測试通过,换到 LINUX+nginx 的环境中时 就出问题了(ZIP包中有文件和目录一共3百多个文件,大部分是带汉字的文件名称),问题的现象是:不带汉字的文件解压没有问题,另外有部分带汉字和数字字母的文件解压没有问题,然后其它纯文字的文件名称就丢失了,也没有报错,最后把问题定位到了extractTo()方法,这种方法尼玛是个封装的方法,看不到实际的源码。
      可是,发现 for($i = 0; $i < $zip->numFiles; $i++) 这里却能够找到全部的文件,个数是正常的,那么问题就出现解压后的 copy环节了。那么是不是能够借助这个循环自己解压,自己copy文件呢??

     于是
    for($i = 0; $i < $zip->numFiles; $i++) {
       $filename = $zip->getNameIndex($i);

    if(!is_dir($filename)){
          copy(“zip://”.$path.”#”.$filename, $topath.$filename);
    }else{
         @mkdir($topath.’/’.$filename, 0777);
    }
   }     

  问题攻克了哈。  找这个问题浪费了 我一天时间!! 希望对碰到相同 文件在解压的时候丢失的同学有帮助哈。 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117958.html原文链接:https://javaforall.net

(0)
上一篇 2021年12月15日 下午8:00
下一篇 2021年12月15日 下午9:00


相关推荐

  • html中背景图片等比例缩放,CSS实现响应式全屏背景图+用CSS3实现全屏按比例缩放背景图片…

    html中背景图片等比例缩放,CSS实现响应式全屏背景图+用CSS3实现全屏按比例缩放背景图片…该楼层疑似违规已被系统折叠隐藏此楼查看此楼随着逐浪 CMS 新版的一些效果逐渐放出 有不少的朋友想全屏的背景图片如何设计 在不同的时代有不同的流行网站显示形式 当前很流行的一种网页形式就是满屏大图 本文将用最简单的方式实现该效果 用到了 CSS 属性 background size 无需 javascript 先看 demo 打开后 调整浏览器窗口大小 观察背景图的变化 如果在你的项目中也需要这样的效果

    2026年3月18日
    2
  • 实现阿里云DDNS解析[通俗易懂]

    实现阿里云DDNS解析[通俗易懂]我有三种设备,synologyopenwrtraspberryopenwrt1,首先,我在openwrt上实现,这有分为二种方法,其实也是一种方法,1,下载ddns-scripts_aliyun_1.0.0-1_all.ipk这个安装包,直接安装,在app-ddns里面就可以看到阿里去的服务商了,然后输入用户名,密码就可以了。2,使用自定义的脚本也行,raspberrysynology…

    2022年6月7日
    37
  • [Vuex系列] – Actions的理解之我见

    [Vuex系列] – Actions的理解之我见

    2021年7月6日
    75
  • python制作一个【搜索工具】,可搜索隐藏文件、系统文件、搜索速度一绝「建议收藏」

    python制作一个【搜索工具】,可搜索隐藏文件、系统文件、搜索速度一绝「建议收藏」经常使用电脑自带的搜索很慢很卡,今天做一个搜索工具,可以搜索到隐藏的文件,而且速度也很快点个赞留个关注吧!!导入模块importos检测一下输入的路径最后一位有没有/,如果没有则添加,是为了方便操作ifDIR.endswith(‘/’)==True:passelse:DIR=DIR+’/’用来循环检测文件,进入文件目录然后检测,再次进入检测,循环往复defiterbrowse(path):forhome,dirs,fi

    2026年1月29日
    5
  • 这2个PDF转Word免费不限页数工具很多人没用过

    这2个PDF转Word免费不限页数工具很多人没用过很多人在搜索下载过PDF转换器的小伙伴都会有一个灵魂拷问:难道就没有免费还没页数限制的PDF转Word的工具吗?小编经过不断的对比和试用,找到以下两款好用免费的工具,相信总有一个你能用上。一、PDF转换器相信了解PDF这种文档格式设计由来的人对于Adobe肯定不陌生,所以首先要说的PDF转换工具就是AdobePDF,下载安装后打开软件,直接将PDF拖到软件页面打开即可,然后点击左上角“文件”中的“另存为其他”,选择我们需要转换成的Word格式就可以了。或者点击右侧“工具”选项中的“将文件导出为”并

    2022年4月27日
    98
  • win10专业工作站版激活码_通用破解码

    win10专业工作站版激活码_通用破解码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月17日
    197

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号