これはほとんどの人にとってばかげた質問かもしれませんが、私は次のフォルダを持っています。これを圧縮したいと思います。
FolderI
Folder1
Folder2
Folder3
..
..
FolderN
さて、特にここでは、オンラインのリソースが非常に多いため、に圧縮FolderI
するのは非常に簡単です。しかし、ファイルを解凍すると、を作成するのではなく、現在のディレクトリに直接データを入力するように、を含むzipFile.zip
を作成したいと思います。zipFile.zip
Folder1...FolderN
Folder1...FolderN
FolderI
Folder1...FolderN
私が試していることのいくつかは次のとおりです。
$zip = new ZipArchive();
// open archive
if ($zip->open('my-archive.zip', ZIPARCHIVE::CREATE) !== TRUE) {
die ("Could not open archive");
}
// initialize an iterator
// pass it the directory to be processed
$iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator("FolderI/"));
// iterate over the directory
// add each file found to the archive
foreach ($iterator as $key=>$value) {
$zip->addFile(realpath($key), $key) or die ("ERROR: Could not add file: $key");
}
// close and save archive
$zip->close();
これは、phpスクリプトを使用してcompress / archiveフォルダーから取得され、変更しようとしました。しかし、動作しませんでした-FolderIはまだ圧縮されています。しかし、解凍するとmy-archive.zip
、が表示されFolderI
、そのFolder1..FolderN
中に表示されます。@Alixのコードもここのどこかで見ましたが、これは同じことをしました。しかし、あまりフォローしていませんでした。
どんな種類の助けも素晴らしいでしょう。コードでない場合は、少なくとも私を正しい方向に向けてください。
ありがとう
****ここの誰かがこれを行う方法を知っていますか?****
@Mods and Admins:ソリューションが単純すぎるか、PHPがこれをまったく実行できないのですか?