kostenloser Webspace werbefrei: lima-city


gzdecode fehlt

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    f**c

    Guten Abend,

    Ich habe auf meinem Entwicklungssever ein wenig mit dem Zlib-Funktionen von PHP herumprobiert.
    Ich hatte einen Zeichenkette mit gzencode() Codiert und wollte diese wieder mit gzdecode() Decodieren.

    Aber zu meinem erstaunen musste ich feststellen, dass PHP mir einen Fehler anzeigt,
    dass die besagte Funktion nicht existiert.

    Gut okay, nochmal nachgeschaut ob Namen richtig geschrieben, kein Fehler.
    Das hat mich stutzig gemacht, darauf hin habe ich mir alle definierten Funktionen ausgeben lassen.
    (get_defined_functions())

    Ich habe die Funktion nicht gefunden.
    Gut, vielleicht liegts ja an meinem Server und habe daraufhin
    hier auf lima die Funktion in der Liste gesucht,
    da lima die selbe PHP Version verwendet (5.3.8), auch nichts.
    Hier schaut selbst, die gz-Funktionen fangen bei 167 an: http://finc.lima-city.de/blank.php

    So nun aber zu meiner eigentlichen Frage,
    weiß jemand warum die Funktion fehlt, hat das einen bestimmten Grund?
    Oder bin ich wohlmöglich auf einen Bug in dieser PHP Version gestoßen?
    (Was ich nicht glaube, weil soetwas nach dem Release der Version sicherlich sofort aufgefallen wäre...)
    :confused:
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. g****e

    http://www.php.net/manual/de/function.gzdecode.php

    Die Funktion existiert. Du kannst auch gzcompress und gzuncompress benutzen. Hat eigentlich den gleichen Effekt. gzdeflate und gzinflate kannst du auch nutzen. Wären alternativen dazu ;-)

    Liebe Grüße
  4. Autor dieses Themas

    f**c

    Hast du meinen Beitrag richtig gelsen?
    Sie müsste existieren, tut sie aber dennoch nicht, ich bekomme eine undefined - Fehlermeldung.
    Deswegen ja auch dieser Thread. ^^

    Du kannst auch gzcompress und gzuncompress benutzen.

    Stimmt, aus diesem Grund ist es ja eigentlich kein Problem, aber
    ich verstehe trotzdem nicht wieso sie fehlt.

    Edit:
    Stimmt nicht ganz, diese Funktionen komprimieren nach zlib nicht nach gzip.
    Und das kann wiederum ein Problem sein, da die meisten Browser,
    meines wissens nach, gzip decodieren.

    Und in der liste der intern definierten Funktionen ist sie auch nicht zu finden.
    Aber ich lese gerade, "(No version information available, might only be in SVN)"

    Hat das vielleicht etwas damit zu tun?
    Bzw. ich hab keine Ahnung was das bedeuten soll... ^^

    Beitrag zuletzt geändert: 10.1.2012 21:48:22 von finc
  5. Hallo finc,

    ich vermute, dass "No version information available, might only be in SVN" bedeutet, dass die Funktion mittlerweile zwar programmiert ("im SVN" bedeutet, dass der Quellcode einer Funktion mit diesem Namen im Versionsverwaltungssystem ist) aber noch nicht in einem Release veröffentlicht wurde. D.h. sie wird vermutlich Bestandteil einer der nächsten Versionen werden.
    Aber in der PHP-Doku ist ja auch ein kleiner Work-Around angegeben:
    function gzdecode($data)
    {
       return gzinflate(substr($data,10,-8));
    }
    Den Namen der Funktion sollte man aber vermutlich anders wählen damit man nicht mit zukünftigen PHP-Versionen Probleme bekommt.
  6. t*****b

    darkpandemic schrieb:
    } [/code] Den Namen der Funktion sollte man aber vermutlich anders wählen damit man nicht mit zukünftigen PHP-Versionen Probleme bekommt.


    oder so:

    if(!function_exists("gzdecode")) {
     function gzdecode($data) {
      return gzinflate(substr($data,10,-8));
     }
    }


    Beitrag zuletzt geändert: 11.1.2012 5:04:37 von trueweb
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!