我正在尝试将两个文件压缩到另一个目录中,而不压缩文件夹层次结构。
该事件由按下按钮触发,这会导致 Javascript 使用 AJAX 向 PHP 发送信息。PHP 调用 Perl 脚本(利用 Perl 的 XLSX 编写器模块和 PHP 有点糟糕的事实,但我离题了......),它将文件放在层次结构的几个文件夹中。相关代码如下所示。
system("createFiles.pl -ids ${rows} -test ${test} -path ${path}",$retVal);
`zip ${path}/{$test}_both.zip ${path}/${test}.csv ${path}/${test}.xlsx`;
`zip ${path}/{$test}_csv.zip ${path}/${test}.csv`;
问题是 zip 文件的${path}
层次结构必须在文件显示之前进行导航,如下所示:
我试过这样做(在每个 zip 命令之前 cd):
system("createFiles.pl -ids ${rows} -test ${test} -path ${path}",$retVal);
`cd ${path}; zip {$test}_both.zip ${test}.csv ${test}.xlsx`;
`cd ${path}; zip {$test}_csv.zip ${test}.csv`;
它有效,但它似乎是一个黑客。有没有更好的办法?