Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]ZIP - generowanie w locie..
wNogachSpisz
post
Post #1





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

Ostrzeżenie: (40%)
XX---


Witam
Z góry proszę o wyrozumiałość, nie mam doświadczenia przy pracy z danymi binarnymi ani w PHP ani w żadnym innym języku, szukam pomocy, jak to ugryść.

Chce wygenerować plik w formacie ZIP zawierający kilka plików,
problem polega na tym, że pliki te są znacznej wielkości więc nie mogę użyć bibliteki ZLIB czy jakiejkolwiek innej do wygenerowania całego archiwum w pamięci, muszę zrobić to na zasadzie fread()/echo, poziom kompresji ma być zerowy (store).
W tym celu musze nijako zaimplementować format ZIP w php.

Specyfikację znalazłem tutaj:
http://www.pkware.com/documents/casestudies/APPNOTE.TXT

Załózmy że chce mieć w takim archiwum dwa PUSTE pliki o nazwach kolejno '1.txt' i '2.txt'.

Kod
    [local file header 1]
    [file data 1]
    [data descriptor 1]
    .
    .
    .
    [local file header n]
    [file data n]
    [data descriptor n]
    [archive decryption header]
    [archive extra data record]
    [central directory]
    [zip64 end of central directory record]
    [zip64 end of central directory locator]
    [end of central directory record]


Rozumiem że muszę podać sumy kontrole plików w CRC-32, OK, ale czy musze też podac sumę kontrolną całego pliku ZIP?
Czy ktoś mógłby objaśnić jak się za to zabrać?
Z góry dziękuję za pomoc.

Ten post edytował wNogachSpisz 5.10.2011, 20:21:17
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
mls
post
Post #2





Grupa: Zarejestrowani
Postów: 677
Pomógł: 89
Dołączył: 31.08.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Jeśli nie chcesz kompresować plików, a jedynie złączyć je w jeden, to może bardziej oczywistym rozwiązaniem będzie zastosowanie formatu TAR, którego podstawową specyfikację znajdziesz np. na http://en.wikipedia.org/wiki/Tar_(file_format)


--------------------
Go to the top of the page
+Quote Post
wNogachSpisz
post
Post #3





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

Ostrzeżenie: (40%)
XX---


Dobry pomysł..

http://www.phpclasses.org/browse/file/1779.html

Ten post edytował wNogachSpisz 8.10.2011, 13:08:20
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 03:53