由於zip格式中並沒有指定編碼格式,windows下生成的zip檔案中的編碼是gbk/gb2312等,因此,導致這些zip檔案在linux下解壓時出現亂碼問題,因為linux下的預設編碼是utf8。目前網上流傳一種unzip -o cp936
的方法,但一些unzip是沒有-o這個選項的。
> unzip -o cp936 demo.zip
但是,有些發行版所帶的 unzip 沒有這個引數,比如 archlinux 就需要安裝 unzip-iconv。ubuntu 12.04 裡面的 unzip 是有這個引數的。
> 7z e -o #正常解壓
> 7z x -o #全解壓,壓縮包中包含壓縮包,也給解壓了
PHP解壓ZIP壓縮包,解決中文亂碼問題
測試環境是windows10 中文的zip壓縮包名和中文的檔名會導致php原生自帶的ziparchive亂碼,導致extractto方法失效 zip new ziparchive zipfile test.zip res zip open zipfile todir test s zip extra...
PHP上傳ZIP壓縮包並解壓
因為專案上面的需要,所以研究了php解壓壓縮包,當然php不止這一種解壓方式,個人覺得是比較方便的辦法,不需要安裝其他的擴充套件。獲取表單提交的壓縮檔案 file files file 獲取檔名 name file name 獲取絕對路徑 path getcwd 定義檔案儲存路徑 filepath ...
PHP生成zip壓縮包
我們將乙個檔案生成乙個壓縮包。path c wamp www log.txt filename test.zip zip new ziparchive zip open filename,ziparchive create 開啟壓縮包 zip addfile path,basename path 向...