介绍
小编给大家分享一下php zip解压乱码怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!
php zip解压乱码的解决办法:首先将中文压缩包名用iconv函数转码,然后通过ZipArchive的对象处理zip文件,最后关闭处理的zip文件即可。
引用>
& lt; php ? $ zip=新\ ZipArchive; $ zipfile=啊?test.zip"; res美元=$ zip→开放(zipfile美元); $ toDir=啊?test"; $ s=$ zip→extractTo ($ toDir); print_r (scandir (toDir美元));//Dorm_Script//链接:http://www.jianshu.com/p/3efa924fd809
& lt; php ? $ zip=新\ ZipArchive; $ zipfile=啊?test.zip"; res美元=$ zip→开放(zipfile美元); $ toDir=啊?test"; 如果(! file_exists (toDir美元)){ mkdir ($ toDir); } 美元docnum=$ zip→numFiles; ($ i=0;美元我& lt;docnum美元;$我+ +){ 美元statInfo=$ zip→statIndex ($ i); if ($ statInfo [& # 39; crc # 39;]==0) {//新建目录 mkdir(本市toDir # 39;美元/& # 39;.substr (statInfo美元[& # 39;名字# 39;],0,1)); 其他}{//拷贝文件 复制(& # 39;邮政编码://& # 39;。美元zipfile强生# 39;# & # 39;。美元statInfo[& # 39;名字# 39;],美元toDir强生# 39;/& # 39;。美元statInfo[& # 39;名字# 39;]); } } print_r (scandir (toDir美元));//Dorm_Script//链接:http://www.jianshu.com/p/3efa924fd809
//zip文件名 $ fileName=& # 39;中文. zip # 39;;//zip文件相对服务器根目录的保存路径 uploads_dir=?美元/公共/zipUpload";//zip文件完整的保存路径 _SERVER $ zipName=[& # 39; document_root # 39;]。美元uploads_dir强生# 39;/& # 39;美元文件名;//将目标路径名称赋值为文件名最后的& # 39;. zip # 39;四个字符之外的全部字符构成的字符串 _SERVER $ toDir=[& # 39; document_root # 39;]。美元uploads_dir强生# 39;/& # 39;.substr(文件名,美元0,strlen ($ fileName) 4); $ zip=新\ ZipArchive;//新建一个ZipArchive的对象/* 通过ZipArchive的对象处理zip文件 $ zip→打开这个方法的参数表示处理的zip文件名。 如果对邮政文件对象操作成功,$ zip→打开这个方法会返回现实 */res美元=$ zip→打开(iconv (& # 39; utf - 8 # 39; & # 39; gb2312 # 39;, zipName美元)); 如果(res美元===TRUE) { 如果(!is_dir (iconv (& # 39; utf - 8 # 39; & # 39; gb2312 # 39;, toDir美元))){ mkdir (iconv (& # 39; utf - 8 # 39; & # 39; gb2312 # 39;, toDir美元),0777年,真的); }//$ zip→extractTo ($ toDir); 美元docnum=$ zip→numFiles; ($ i=0;美元我& lt;docnum美元;$我+ +){ 美元statInfo=$ zip→statIndex ($ i); if ($ statInfo [& # 39; crc # 39;]==0) {//新建目录 mkdir (iconv (& # 39; utf - 8 # 39; & # 39; gb2312 # 39;,本市toDir # 39;美元/& # 39;。美元statInfo[& # 39;名字# 39;]),0777年,真的); 其他}{//拷贝文件,特别的改动,iconv的位置决定复制能不能工作 如果(复制(& # 39;邮政编码://& # 39;。iconv (& # 39; utf - 8 # 39;, & # 39; gb2312 # 39;, zipName美元)强生# 39;# & # 39;。美元statInfo[& # 39;名字# 39;],iconv (& # 39; utf - 8 # 39; & # 39; gb2312 # 39;,本市toDir # 39;美元/& # 39;。美元statInfo[& # 39;名字# 39;]))==false) { 回声& # 39;faild复制# 39;; } } } print_r (scandir (iconv (& # 39; utf - 8 # 39; & # 39; gb2312 # 39;, toDir美元))); $ zip→close();//关闭处理的zip文件 } 其他{ 回声& # 39;失败了,代码:& # 39;$ res强生# 39;& lt; br> & # 39;; }
数组 ( [0]=比;. [1]=比;. . [2]=比;?? [3]=比;? )
中文. zip ├──不 │└──要 │└──dance.txt └──要 └──dance1。txt以上是php zip解压乱码怎么办的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
php zip解压乱码怎么办