0

いくつかのファイルを圧縮して、ユーザーに送信してダウンロードしようとしています。zip ファイルは意図したとおりに送信されますが、テキスト ファイルはアーカイブに追加されません。

誰かが私が間違っていることを見ることができますか? 相対および絶対ファイルパスを試しました。

また、二次的な質問として: このコードが正しい場合、私の開発環境は WAMP セットアップであり、ライブ環境は LAMP セットアップです。このコードは両方で機能しますか?

header('Content-Type: application/zip'); 
header('Content-Disposition: attachment; filename="download1.zip"');
header('Content-Transfer-Encoding: binary');
ob_clean();
flush();
$fp = popen('zip -0 -j -q -r - C:\xampp\htdocs\test\f\1.txt C:\xampp\htdocs\test\f\2.txt', 'r');
while (!feof($fp)) {
echo fread($fp, 8192);
ob_flush();
flush();
}
pclose($fp);
4

1 に答える 1

0

zipコマンドの最初のファイル名は作成するzipファイルの名前です。次のファイルは、アチーブメントに追加するファイルです。偽のzipファイルを単にいじくり回すだけでうまくいくようです。

$ fp = popen('zip -0 -j -q -r --download1.zip test.txt test2.txt'、'r');

于 2013-03-20T14:39:58.790 に答える