インターネット上で入手できる情報がないため、これが可能かどうかはわかりません。結果なしで2時間検索します。
ディレクトリ内のファイル名を知らずにディレクトリを圧縮しようとしています。多くの方法を試しましたが、それらにはパス全体が含まれています。zip 内のファイルのみが必要です。
私は次のことを試しました:
$zipFile = "./testZip.zip";
$zipArchive = new ZipArchive();
if (!$zipArchive->open($zipFile, ZIPARCHIVE::OVERWRITE))
die("Failed to create archive\n");
$zipArchive->addGlob("./*.txt");
if (!$zipArchive->status == ZIPARCHIVE::ER_OK)
echo "Failed to write files to zip\n";
$zipArchive->close();
と:
$zip = new ZipArchive;
$zip->open('myzip.zip', ZipArchive::CREATE);
foreach (glob("target_folder/*") as $file) {
$zip->addFile($file);
if ($file != 'target_folder/important.txt') unlink($file);
}
$zip->close();