Po złożeniu wniosku gzip deflate w PHP, I otrzymać przebicia ciąg w offsetowych kawałki, które wygląda jak na poniższymJak rozszyfrować/nadąć struny gzip?
przykładu skróconej znacznie pokazać format:
00001B4E
¾”kŒj…Øæ’ìÑ«F1ìÊ`+ƒQì¹UÜjùJƒZ\µy¡ÓUžGr‡J&=KLËÙÍ~=ÍkR
0000102F
ñÞœÞôΑüo[¾”+’Ñ8#à»0±R-4VÕ’n›êˆÍ.MCŽ…ÏÖr¿3M—èßñ°r¡\+
00000000
jestem w stanie nadmuchać że prawdopodobnie ze względu na format porcji. Mogę potwierdzić, że dane nie są uszkodzone po ręcznym usunięciu przesunięć za pomocą edytora szesnastkowego i odczytaniu archiwum gzip. Zastanawiam się, czy istnieje właściwa metoda do przeanalizowania tej podzielonej odpowiedzi z gzipem na czytelny ciąg znaków?
Mogę być w stanie podzielić te przesunięcia i połączyć dane w jeden ciąg, aby wywołać gzinflate, ale wydaje się, że musi być łatwiejszy sposób.
Doskonały, działa zgodnie z oczekiwaniami. Jest to przydatna funkcja PHP, której szukałem już od jakiegoś czasu. Wielkie dzięki! – user1309276
@ user1309276 Zaktualizowałem powyższą funkcję, wystąpił błąd związany z zachowaniem, gdy ciąg zawiera literalną CRLF. Zostało to teraz naprawione, co również zapewnia lepsze wykrywanie zniekształconych ciągów. – DaveRandom
Jeszcze raz dziękuję! Dla każdego, kto wciąż ma problemy, po wywołaniu unchunk_string wszystko, co muszę zrobić, to usunąć pierwsze 10 bajtów za pomocą: $ data = gzinflate (substr ($ data, 10)); – user1309276