Nach einer gzip deflate Anfrage in PHP zu machen, erhalte ich die entleerten Zeichenfolge in Offset-Stücke, die stark Format zu zeigen, verkürzt wie folgtWie man eine chunked gzip Zeichenkette decodiert/aufbläst?
Beispiel sieht:
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
aufzublasen Ich bin nicht in der Lage, dass vermutlich wegen des Chunked-Formats. Ich kann bestätigen, dass die Daten nicht korrupt sind, nachdem ich die Offsets manuell mit einem Hex-Editor entfernt und das gzip-Archiv gelesen habe. Ich frage mich, ob es eine richtige Methode gibt, diese chunked gzip deflationierte Antwort in eine lesbare Zeichenfolge zu analysieren?
Ich könnte in der Lage sein, diese Offsets zu teilen und die Daten in einer Zeichenfolge zusammenzufassen, um Gzinflate aufzurufen, aber es scheint, dass es einen einfacheren Weg geben muss.
Ausgezeichnet, funktioniert wie erwartet. Das ist eine praktische PHP-Funktion, ich suche das schon seit einiger Zeit. Vielen Dank! – user1309276
@ user1309276 Ich habe die obige Funktion aktualisiert, es hatte einen Fehler um das Verhalten, wenn die Zeichenfolge eine literale CRLF enthält. Dies wurde nun behoben und dies hat auch eine bessere Erkennung von fehlerhaften Strings ermöglicht. – DaveRandom
Danke nochmal! Für alle, die immer noch Probleme haben, nach dem Aufruf von unchunk_string, muss ich nur die ersten 10 Bytes entfernen mit: $ data = gzinflate (substr ($ data, 10)); – user1309276