Tom: Post auf Zahlenwerte überprüfen

Beitrag lesen

Hello,

Wenn die nicht ausreichen, dann kannst Du auch selber etwas basteln, z.B. mit Hilfe von regulären Ausdrücken.

Ich habe gerade http://de3.php.net/manual/de/function.is-numeric.php gefunden, was ist denn hiervon zu halten?

Das kannst Du eigentlich selber ausprobieren, wie weit dich diese Funktion bringt:

Ich habe das Beispiel mal etwas erweitert:

#----------------------
<?php  ### is_numeric.php ###

$tests = array(
        "42",
        1337,
        "1e4",
        "not numeric",
        'hans123',
        '123Hans',
        '456 123',
        '1234,777',
        '12.234.890,7',
        Array(),
        9.1
        );

echo "<pre>", PHP_EOL;

foreach ($tests as $element)
{
    if (is_numeric($element))
    {
        echo "'{$element}' is numeric", PHP_EOL;
    }
    else
    {
        echo "'{$element}' is NOT numeric", PHP_EOL;
    }
}
?>
#----------------------

Das ergibt dann:

'42' is numeric
'1337' is numeric
'1e4' is numeric
'not numeric' is NOT numeric
'hans123' is NOT numeric
'123Hans' is NOT numeric
'456 123' is NOT numeric
'1234,777' is NOT numeric
'12.234.890,7' is NOT numeric
'Array' is NOT numeric
'9.1' is numeric

Wie Du siehst, wird '12.234.890,7' als nicht numerisch bezeichnet. Die Einstellungen des Systems für Dezimalseparator und Tausender-Trenner passen also nicht zur deutschen Darstellung.

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
 ☻_
/▌
/ \ Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de