1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Vergleichs"problem"

  • tsp
  • 6. August 2008 um 21:22
  • Unerledigt
  • tsp
    3
    tsp
    Mitglied
    Punkte
    90
    Beiträge
    15
    • 6. August 2008 um 21:22
    • #1

    Vergleichs"problem"

    PHP
    <?php
       if("00E0" == "00E1") {
          echo("Equal");
       } else {
          echo("Not equal");
       }
    ?>


    Weiß jemand von euch, wieso der Vergleichsoperator in PHP bei zwei Zeichenketten wie im obigen Beispiel true liefert? (Getestet auf PHP 5.2.5 (cli) mit der Zend Engine v2.2.0 unter FreeBSD und PHP 5.2.6 (cli) mit der Zend Engine v2.2.0 unter Windows). Laut PHP Handbuch sollte PHP die Zeichenketten in diesem Fall als Hexadezimal interpretieren - in dem Fall müsste der vergleich false liefern. Der Vergleich bei expliziter Umwandlung von Hexadezimal auf Dezimal liefert das Ergebniss, das ich erwarten würde ...

    PHP
    <?php
       if(hexdec("00E0") == hexdec("00E1")) {
          echo("Equal");
       } else {
          echo("Not equal");
       }
    
    
    ?>
  • Jensi
    28
    Jensi
    Mitglied
    Reaktionen
    141
    Punkte
    8.486
    Beiträge
    1.649
    • 7. August 2008 um 09:10
    • #2

    http://at.php.net/manual/en/lang…ring.conversion:

    Zitat

    The string will be evaluated as a float if it contains any of the characters '.', 'e', or 'E'. Otherwise, it will be evaluated as an integer.

  • beefy
    13
    beefy
    Mitglied
    Reaktionen
    18
    Punkte
    1.683
    Beiträge
    304
    • 11. August 2008 um 22:28
    • #3

    Schlimm, schlimm.

    Für "typ"genauere Vergleiche sind jedenfalls === und !== zu empfehlen.

  • Maximilian Rupp 27. Dezember 2024 um 12:04

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Rechtliches

Impressum

Datenschutzerklärung