2016-01-04 110 views
1

使用ZIP命令(只有父母),我想創建的所有文件的文件夾X與名稱的拉鍊filename.zip在PHP中使用下面的命令,如:刪除的文件夾結構在PHP

exec(zip -r "./Zips/filename.zip" "./Uploads/Data/X/")

但創建的zip文件夾結構爲Uploads/Data/X。請幫我擺脫這些父文件夾 - Uploads/Data

回答

2

創建zip壓縮包(Linux)的時候忽略的文件夾結構:
默認情況下,郵編將存儲的完整路徑(相對於當前目錄)。

幾種方法:

  • 移動到X文件夾預先:

    exec('cd /./Uploads/Data/X/; zip -r "./Zips/filename.zip" "*"'); 
    
  • 使用-j--junk-paths)選項:

    exec('zip -j "./Zips/filename.zip" "./Uploads/Data/X/"'); 
    
+0

有沒有像這樣的解決方案,可用? [在PHP中使用tar命令創建zip文件包含文件夾結構](http://stackoverflow.com/questions/19927356/created-zip-file-contain-folder-structure-using-tar-command-in-php) – Phoenix

+0

@鳳凰,你是什麼意思? – RomanPerekhrest

+0

就像這樣:'exec(「tar -cvf filename.zip -C/home/public_html/uploads/abc /」)'。這樣你就不必使用'cd'命令了。 – Phoenix