Ankündigung

Einklappen
Keine Ankündigung bisher.

Was bedeutet if ($var1 & $var2) ?

Einklappen

Neue Werbung 2019

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

  • Paulo
    hat ein Thema erstellt Was bedeutet if ($var1 & $var2) ?.

    Was bedeutet if ($var1 & $var2) ?

    PHP-Code:
    if ($var1 $var2)
    {..do 
    sth.. } 
    Wird hier überprüft ob beide Variablen einen Wert haben oder was genau wird hier überprüft?

    Danke.

  • Zergling-new
    antwortet
    Genau, da
    10101 = 21
    +
    00101 = 5
    =
    00101 = 5

    da
    0 & 0 = 0
    0 & 1 = 0
    1 & 0 = 0
    1 & 1 = 1

    Einen Kommentar schreiben:


  • HStev
    antwortet
    ok meine Beschreibung war etwas unpassend der Bit-Und-Operator gibt die Bits zurück die in beiden Werten gesetzt sind.

    besseres Beispiel:

    21 = 10101
    5 = 00101

    21 & 5 ergibt 5
    21 & 1 ergibt 1
    21 & 2 ergibt 0

    usw.

    Einen Kommentar schreiben:


  • Paulo
    antwortet
    ok also scheinbar ist es in C#

    PHP-Code:
    if ((var1 var2) == 0

    Einen Kommentar schreiben:


  • Zergling-new
    antwortet
    Probiers doch aus?

    Einen Kommentar schreiben:


  • Paulo
    antwortet
    Hi und danke für die Antwort.

    Also wenn du mir nun noch sagen könntest wie if ($var1 & $var2) in C# aussieht hab ichs glaub ich definitiv verstanden.

    in C# ist also if (var1 == var2) nicht das gleiche wie in php mit &. Wäre es dann in C# (var1 & var2) ? Also genaugleich ?

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    nein.
    PHP-Code:
    <?php
    $var1 
    1;
    $var5 5;

    if (
    $var1 $var5) {
        echo 
    'a';
    }
    if (
    $var1 == $var5) {
        echo 
    'b';    
    }
    ?>
    Eigentlich müsste beim ersten Vergleich auch
    if ( ($var1&$var5)!=0 )
    stehen.
    C# zB führt an dieser Stelle keine Umwandlung durch und erwartet einen Wahrheitswert wie x==0

    Einen Kommentar schreiben:


  • Paulo
    antwortet
    aber rein theoretisch ist es doch das gleiche wie

    PHP-Code:
    if ($var1 == $var2
    oder?

    Einen Kommentar schreiben:


  • HStev
    antwortet
    aber aufpassen verwechselt man gerne mit dem UND weil die UND Vernküpfung einfach nur mit 2 kaufm. & dargestellt werden deshalb zieh ich immer vor die Verknüpfungen auszuschreiben

    Einen Kommentar schreiben:


  • Paulo
    antwortet
    Ahh, ok, danke!

    Einen Kommentar schreiben:


  • HStev
    antwortet
    $var1 wird mit $var2 auf Binärer Ebene überprüft d.h. wenn der Binär-Wert der beiden Werte übereinstimmt ergibt die Bedingung true

    Beispiel:
    5 = 0101
    6 = 0110

    5 & 6 = false
    0101 & 0110 = false

    5 & 5 = true
    0101 & 0101 = true

    siehe auch http://www.php.net/manual/de/languag...rs.bitwise.php

    Einen Kommentar schreiben:

Lädt...
X