Ankündigung

Einklappen
Keine Ankündigung bisher.

imagetypes() & IMG_GIF: Wie funktioniert das?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • imagetypes() & IMG_GIF: Wie funktioniert das?

    Hi,

    Um den gif-Support der gd zu testen, verwendet man ja

    Code:
    if(imagetypes() & IMG_GIF){ 
      echo 'gif OK';
    }
    Meine Frage ist, wie funktioniert diese if-Bedingung bzw. der Bit-Operator? Ich habe in der Doku nur gefunden, dass IMG_GIF für einen Bit-Wert steht, aber was genau gibt imagetypes() und die Kombination mit dem Bitoperator "&"?

    Danke
    Viele Grüße

  • #2
    Anfangen mit: http://de.wikipedia.org/wiki/Bitmaske

    Dann ausprobieren:
    PHP-Code:
    <?php
    function bin8bit($value) {
        return 
    sprintf('%08s'decbin($value));
    }

    function 
    foo($constName) {
        
    $it imagetypes();
        
    $value constant($constName);
        
    $res $it $value;
        echo 
    bin8bit($it), ' : '$it" : imagetypes
    \n"
    ;
        echo 
    bin8bit($value), ' : '$value' : '$constName"
    \n"
    ;
        echo 
    bin8bit($res), ' : '$res" : AND-verknüpft
    \n"
    ;
        echo 
    "
    \n"
    ;
    }

    foo('IMG_GIF');
    foo('IMG_JPG');
    foo('IMG_PNG');
    foo('IMG_WBMP');
    ?>
    Eine Zahl ungleich 0 wird in einem bool-Kontext in TRUE umgewandelt.

    Kommentar


    • #3
      Re: imagetypes() &amp; IMG_GIF: Wie funktioniert das?

      Zitat von bicpi
      Meine Frage ist, wie funktioniert diese if-Bedingung bzw. der Bit-Operator?
      Wenn du zwei Bitreihen miteinander mit & vergleichst, erhälst du für alle Stellen, an denen beide Ketten eine 1 haben 1 und für alle anderen Stellen 0:
      Code:
      1001001
      0111011
      ---------
      0001001
      -> http://www.php.net/manual/en/languag...rs.bitwise.php

      Kommentar


      • #4
        Danke das hat mir super geholfen, ich habs gecheckt.
        Viele Grüße

        Kommentar

        Lädt...
        X