使用PHP中的ZIP命令删除文件夹结构(仅限父级)


Remove folder structure (parents only) using ZIP command in PHP

我想在php中使用以下命令创建X文件夹中所有文件的zip,名称为filename.zip:

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

但是所创建的zip具有文件夹结构CCD_ 3。请帮我去掉这些父文件夹-Uploads/Data

创建zip存档时忽略文件夹结构(Linux):
默认情况下,zip将存储完整路径(相对于当前目录)

几种方法:

  • 预先移动到X文件夹:

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

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