Andreas Korthaus: gzip-Komprimierung in beide Richtungen?

Beitrag lesen

Hallo!

Ich habe mir hier eben mal lokal cURL installiert und habe mit dem selben Code keine Probleme feststellen können. Die Datei die gesendet wird ist genauso groß wie die die letztendlich ankommt und auch dekomprimieren klappt.

Also hast Du das auch mal mit einem längeren String probiert? Bekomme dasselbe Problem wie beim schreiben auf die Kommandozeile, was ich ja nicht mache, da ich popen verwende. Wenn ich folgenden String verwende:

$string="asdaösdklaskdlasödsdf9s 9sd 09sd09fsdfus dasfjlkjfd9 0as09dasdjasljdlsakj ad9a 0sd89as klsajdksdf fs s jsdl jsdfi kej klsjdfljs kljkldsjk jldsfj kjdslfjlkdsfssf sdf sdf sdf dfsdfsdfsdf98sd90f8 df89 sd0f809ds8 0ds8f90 8s09f809s 8lasjd js kljkldsjk jldsfj kjdslfjlkdsfssf sdf sdf sdf dfsdfsdfsdf98sdsfsdfsdfs fs sdf sdfsdh jkhsdf sdjfh jkshdjhjdhjhdjkhshfiuez uziu z qpwouip oipwru09320uqiwuilwjledjwqil ueloi wjelidjuoiw eru39po893uprqweqüowuiquj4 oiäejf9ewu üä9poejkjdfdlksalödk öldklwqkökdölkwöl kdölwkdölwkepo qe p0928peoöu oj öoweio piwoeiöioe i üqeiüpqi üpq ie üpqie üp0qie pqeiüqieüp qieüpq iepüqi üei ddsaöl 90f8 df89 sd0f809ds8 0ds8f90 8s09f809s 8lasjd lX1wer 12 1rw qrw";

// so mach ich das jetzt:

$dump=gzcompress($string);

$fp = popen("curl --form clientdata=@- http://www.server.de/env.php > c:/www/curlausgabe.txt", "w");
fputs($fp, $dump);
pclose($fp);

echo "<pre>";
echo "String: ".strlen($string)."\n";
echo "gzip-String: ".strlen($dump)."\n";

$fp2 = fopen("c:/www/curlausgabe.txt", "r");
$result = fread($fp2,1000000);
$time2 = time();
fclose($fp2);

echo $result;
echo "</pre>";

Dann bekomm eich folgende Ausgabe:

String: 677
gzip-String: 353
Array
(
    [clientdata] => Array
        (
            [name] => -
            [type] => text/plain
            [tmp_name] => /tmp/phpg3YiHy
            [size] => 353
        )

)
asdaösdklaskdlasödsdf9s 9sd 09sd09fsdfus ...

hat also geklappt. Wenn ich aber an den String oben ein paar Zeichen dranhänge, sowas wie:

$string="asdaösdklaskdlasödsdf9s 9sd 09sd09fsdfus dasfjlkjfd9 0as09dasdjasljdlsakj ad9a 0sd89as klsajdksdf fs s jsdl jsdfi kej klsjdfljs kljkldsjk jldsfj kjdslfjlkdsfssf sdf sdf sdf dfsdfsdfsdf98sd90f8 df89 sd0f809ds8 0ds8f90 8s09f809s 8lasjd js kljkldsjk jldsfj kjdslfjlkdsfssf sdf sdf sdf dfsdfsdfsdf98sdsfsdfsdfs fs sdf sdfsdh jkhsdf sdjfh jkshdjhjdhjhdjkhshfiuez uziu z qpwouip oipwru09320uqiwuilwjledjwqil ueloi wjelidjuoiw eru39po893uprqweqüowuiquj4 oiäejf9ewu üä9poejkjdfdlksalödk öldklwqkökdölkwöl kdölwkdölwkepo qe p0928peoöu oj öoweio piwoeiöioe i üqeiüpqi üpq ie üpqie üp0qie pqeiüqieüp qieüpq iepüqi üei ddsaöl 90f8 df89 sd0f809ds8 0ds8f90 8s09f809s 8lasjd lX1wer 12 1rw qrw12345";

dann erhalte ich folgende Ausgabe mit selbigem Script:

String: 682
gzip-String: 358
Array
(
    [clientdata] => Array
        (
            [name] => -
            [type] => text/plain
            [tmp_name] => /tmp/phpihTD3G
            [size] => 53
        )

)

Warning:  gzuncompress: buffer error in /www/webseite/env.php on line 12

Wie gesagt, works for me.

auch mit langen Strings? Danke das Du Dir die Mühe gemacht hast!

Grüße
Andreas

0 43

gzip-Komprimierung in beide Richtungen?

Andreas Korthaus
  • https
  1. 0
    Björn Höhrmann
  2. 0
    Philipp Hasenfratz
    1. 0
      Andreas Korthaus
      1. 0
        Henryk Plötz
        1. 0
          Andreas Korthaus
          1. 0
            Henryk Plötz
            1. 0
              Andreas Korthaus
              1. 0
                Henryk Plötz
                1. 0
                  Andreas Korthaus
                  1. 0

                    Nachtrag

                    Andreas Korthaus
                  2. 0
                    Henryk Plötz
                    1. 0
                      Andreas Korthaus
                      1. 0
                        Andreas Korthaus
                      2. 0
                        Philipp Hasenfratz
                        1. 0
                          Andreas Korthaus
                          1. 0
                            Philipp Hasenfratz
                            1. 0
                              Andreas Korthaus
                              1. 0
                                Henryk Plötz
                                1. 0
                                  Andreas Korthaus
                                  1. 0
                                    Henryk Plötz
                                    1. 0
                                      Andreas Korthaus
                                      1. 0
                                        Henryk Plötz
                                        1. 0
                                          Andreas Korthaus
                                          1. 0
                                            Andreas Korthaus
                                          2. 0
                                            Henryk Plötz
                                            1. 0
                                              Andreas Korthaus
                                              1. 0

                                                Nachtrag

                                                Andreas Korthaus
                                                1. 0

                                                  noch einer...

                                                  Andreas Korthaus
                                                  1. 0
                                                    Henryk Plötz
                                                    1. 0
                                                      Andreas Korthaus
                                                      1. 0
                                                        Henryk Plötz
                                                        1. 0
                                                          Andreas Korthaus
                            2. 0
                              Henryk Plötz
                              1. 0
                                Philipp Hasenfratz
      2. 0
        Björn Höhrmann
        1. 0
          Andreas Korthaus
          1. 0
            Björn Höhrmann
            1. 0
              Andreas Korthaus
  3. 0
    Michael Schröpl
    1. 0
      Andreas Korthaus
      1. 0
        Michael Schröpl
        1. 0
          Andreas Korthaus