Ben 7-Zip kullanarak bir dizin sıkıştırmak ve sonra bir web tarayıcı indirmek istiyoruz.
Ancak, bunun yerine bir dosyaya sıkıştırarak, daha sonra PHP tarayıcıya bu dosyanın içeriğini beslemek zorunda ... Ben ideal 7-Zip standart çıktıya yeni arşiv içeriğini yazmak mı istiyorsunuz as the archive is being created Aynı anda ... PHP ile tampon yıkayın ve ve tarayıcıya veri göndermek yerken.
Görüyorsunuz, ben yaratıyorum arşiv oldukça büyük. Onlar tıkladıklarında bir kullanıcının bakış açısından, normal bir yöntemi kullanarak, "İndir," arşiv ilk bir dosyaya oluşturulur ve kaydedilir (ki ~ 10 dakika sürebilir), ve ancak daha sonra yüklenmek üzere PHP ile bıkmış dosya . Ne yapmaya çalışıyorum tek sürecine hem de arşiv ve çıkış adımları birleştirmek olduğunu.
Herkes bu konuda herhangi bir giriş var mı?
İşte aynı şeyi yapmaya çalışıyor SourceForge başkası değildir ...
http://sourceforge.net/projects/p7zip/forums/forum/383043/topic/3828566
=======
Tüm yardım için teşekkür ederim. Geçenlerde bu konuda mükemmel bir tartışma zaten StackOverflow var keşfettim olarak ben, bu konuyu kapatmak için gidiyorum. Bkz:
On-the-fly zipping & streaming of large files, in PHP or otherwise
=======
Bu benim ile gitti nihai çözüm olduğunu, ve bu benim için harika çalışıyor. Ben hemen hemen her platformda için bulabileceğiniz "Infozip" programını kullanıyorum unutmayın.
header('Content-Type: application/zip');
header('Content-disposition: attachment; filename="file.zip"');
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');
passthru("zip -8 -q -r - ./some_directory | cat");