0

この回答のコードは、zip ファイルの内容をフォルダーに抽出するだけです。

<?php
$zip = new ZipArchive;
$res = $zip->open('file.zip');
if ($res === TRUE) {
  $zip->extractTo('/myzips/extract_path/');
  $zip->close();
  echo 'woot!';
} else {
  echo 'doh!';
}
?>

元の zip ファイルが再度作成されるように、PHP でこの操作を逆に実行する簡単な方法 (ファイルごとに foreach ループを使用せず、再帰的にサブフォルダーに降りる) はありますか?

「extract_path」フォルダーを zip ファイルに含めてはなりません。そのため、上記のリンクの再帰関数を単純に使用することはできません。

これは、非常に単純なこれらの Linux シェル コマンドを実行するのと同等の PHP になります。

cd /myzips/extract_path/
zip /dest/file.zip *

(誰かが「なぜそれをしたいのですか?」とコメントする前に、ファイルを変更してzipファイルを再作成したいからです)

4

0 に答える 0