Wie kann ich eine Eingabe auf eine Ganzzahl bzw. Dezimal mit Komma oder Punkt prüfen?

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

  • Wie kann ich eine Eingabe auf eine Ganzzahl bzw. Dezimal mit Komma oder Punkt prüfen?

    Hey

    Wie kann ich eine Eingabe auf eine Ganzzahl bzw. Dezimal mit Komma oder Punkt prüfen?

    gibts da schon was fertiges von php oder muss ich selber eine funktion schreiben?


    thx!

  • #2
    Es gibt schon fertige Funktionen dafür, die Du in der Doku findest.

    Kommentar


    • #3
      Siehe dazu is_int(eger) bzw. is_float im PHP-Manual.
      Einzig wenn es um die Prüfung einer Dezimalzahl mit Komma geht (wobei es sich dann um einen String handelt), musst du mit anderen Mitteln arbeiten.


      Grüße
      Zuletzt geändert von Griecherus; 14.12.2008, 14:46.
      Nieder mit der Camel Case-Konvention

      Kommentar


      • #4
        Die Funktionen von Griecherus funktionieren nicht mit Strings, es sind aber immer welche, wenn ein Formular abgeschickt wird.

        Falls pekka is_numeric meinte, das taugt überhaupt nichts, da alles mögliche als numerisch angesehen wird, z.B. ein String beginnt mit Ziffern.

        Also bleibt letztendlich nur ein Regulärer Ausdruck, auch hinsichtlich Komma/Punkt. Aber ich lasse mich gerne eines Besseren belehren.

        Kommentar


        • #5
          Original geschrieben von phpguru42

          Falls pekka is_numeric meinte, das taugt überhaupt nichts, da alles mögliche als numerisch angesehen wird, z.B. ein String beginnt mit Ziffern.
          Das wäre mir neu.
          Zu is_numeric gibt es auch einige gute Erweiteurngen in den User Contributed Notes auf der Manualseite.

          Kommentar


          • #6
            Original geschrieben von pekka
            Das wäre mir neu.
            Oh, sorry, doch nicht - hätte ich PHP aber zugetraut
            Naja, aber var_dump(is_numeric('1e4')); ist vielleicht auch nicht das, was man möchte.

            Kommentar


            • #7
              Original geschrieben von phpguru42
              Oh, sorry, doch nicht - hätte ich PHP aber zugetraut
              Naja, aber var_dump(is_numeric('1e4')); ist vielleicht auch nicht das, was man möchte.
              Guck in den Notes, da war was mit is_decimal().

              Kommentar


              • #8
                Original geschrieben von phpguru42
                Die Funktionen von Griecherus funktionieren nicht mit Strings, es sind aber immer welche, wenn ein Formular abgeschickt wird.
                Das ist richtig. Ich las nur nirgends etwas von einem Formular.
                Mit Type-Casting lässt sich auch da etwas bewerkstelligen:
                PHP-Code:
                $var '123';

                echo ((string)
                $var) === ((string)(int)$var); 

                Grüße
                Nieder mit der Camel Case-Konvention

                Kommentar

                Lädt...
                X