is_int() -problem

brainsucker

Erfahrenes Mitglied
Hi, ich hatte gestern folgendes Problem und leider keine Antwort / Lösung dafür:

Über ein Formular erhalte ich einen Wert.

$wert = $_REQUEST[derWertAusDemFormular];
echo $wert; // das funktioniert auch, d.h. der Wert kommt an


Nun muss ich diesen Wert überprüfen ob es sich dabei um einen Integer Wert handelt, falls nicht soll ein Fehler ausgegeben werden:

if (!is_int($wert)) { echo "Fehler kein INT"; } else { anweisung; }

Das Problem ist dass er immer behauptet es handele sich nicht um einen Integer Wert.

Hat jemand eine Idee woran es liegt?
 
Übermittelte Formulardaten sind vom Typ her immer Strings.

Wenn du den Wert mit 1 multiplizierst, wird daraus wieder ein Integer:
PHP:
if (!is_int($wert*1)) { echo "Fehler kein INT"; } else { anweisung; }
 
Hallo!

Um was für Werte handelt es sich denn?
Ich hatte z.b. das Problem dass ich keine Kommata und Punkte erlauben wollte (also nur Ganzzahlen ohne Tausender-Trennzeichen sollten erlaubt sein).
Und genau hier steigen is_int() und is_numeric() aus.
Abhilfe hat dann aber ctype_digit() gebracht.

Gruss Dr Dau
 
Zurück