String vergleichen funktioniert nicht

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

  • String vergleichen funktioniert nicht

    Hallo,

    ich habe ein Problem, vielleicht kann mir einer von euch einen Tipp geben.
    Ich möchte zwei Strings miteinander vergleichen und dann entsprechend etwas ausführen.
    Leider funkioniert es nicht. Hier mein Code.

    if ("111111111111111111111567" == "111111111111111111111568") {
    echo "Strings sind gleich";
    }

    Obwohl die Strings unterschiedlich sind, wird das echo ausgeführt.
    Dieses Problem tritt nur auf, wenn die Strings numerisch sind.
    Sind die Strings kleiner als 17 Zeichen lang funtioniert das ganze.

    Danke im vorraus

  • #2
    PHP-Code:
    if ("111111111111111111111567" === "111111111111111111111568") {
    echo 
    "Strings sind gleich";

    Kommentar


    • #3
      Danke für die Antwort.

      Das problem ist, daß dies ein bestehendes Projekt ist, welches unter php3 programmiert wurde. Nun soll es unter php5 laufen.
      Tut es eigentlich auch ohne Probleme, bis auf das oben genannte. Das Projekt besteht aus mehreren tausend Zeilen Code. Es wäre unmöglich überall diese kleine Änderung vorzunehmen.

      Die Frage lautet, wieso funktioniert dieser Vergleich in php3 und in php5 nicht?

      Kommentar


      • #4
        Original geschrieben von Hijack77
        Die Frage lautet, wieso funktioniert dieser Vergleich in php3 und in php5 nicht?
        ich vermute, dass php5 bei dem vergleich zweier nummerischer strings an dieser stelle unsinniger weise einen typecast durchführt.
        so große zahlen lassen sich aber nur mit begrenzter genauigkeit intern darstellen, also ergeben sich "gleiche" zahlen, wenn sich die abweichung nur in den letzten paar stellen befindet.

        php3 scheint da wirklich noch einen echten stringvergleich gemacht zu haben.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          mmmh.
          Irgendwie ist das für mich sehr unbefriedigend.

          Trotzdem danke für die Erklärung.

          Kommentar


          • #6
            Tja ist halt nicht immer Party beim proggen

            Aber suchen und ersetzen wird's scho richten

            Kommentar


            • #7
              Das kann mal wohl laut sagen

              Kommentar


              • #8
                Original geschrieben von Hijack77
                Irgendwie ist das für mich sehr unbefriedigend.
                Mag sein .. letztlich ändern kannst Du an dieser Tatsache allerdings nur etwas wenn du's bei http://bugs.php.net postest ... hier nicht ... !
                carpe noctem

                [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                Kommentar

                Lädt...
                X