RecursiveDirectoryIterator を使用してフォルダーを zip したいのですが、すべてのファイルを組み合わせて 600 MB 以下のサイズの非常に複雑なディレクトリをどれくらい高速に圧縮できますか?
これは使用しているコードです:
$mainFolder=basename($routeFolder);
if(!file_exists('../zips'))
mkdir('../zips', 0744);
$zip = new ZipArchive;
$firstres=$zip->open($zipName, ZipArchive::OVERWRITE);
$files = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator($routeFolder),
RecursiveIteratorIterator::SELF_FIRST
);
foreach ($files as $name => $file) {
if(is_file($file) && file_exists($file)){
$new_filename = substr($file, strpos($file, $mainFolder));
$zip->addFile($file,$new_filename);
}
}
$zip->close();
では、非常に複雑なディレクトリを圧縮するには、およそどのくらいの時間がかかりますか? メモリの問題に直面しますか?とにかく、ajax を使用しているため、ブラウザがクラッシュしたり、ブラウザのページが応答しなくなったりすることはありません...しかし、それでもどのくらい時間がかかりますか?