PHP-如何使用!浮动中的ctype?

PHP-如何使用!浮动中的ctype?,php,Php,我通常总是使用!用php输入数字,这样我就可以输入数字了。但是,我有一个任务需要输入float(例如:123.12),我不知道,因此请求帮助 下面是我的代码: // Payment Amount Validation if (isset($_POST['paymentam'])) { // get value from post after trimming leading and trailing soaces $paymentam = trim($_POST

我通常总是使用!用php输入数字,这样我就可以输入数字了。但是,我有一个任务需要输入float(例如:123.12),我不知道,因此请求帮助
下面是我的代码:

        // Payment Amount Validation
if (isset($_POST['paymentam'])) {

    // get value from post after trimming leading and trailing soaces
    $paymentam = trim($_POST['paymentam']);
    // test for missing input
    if (strlen($paymentam) == 0) {
        $errors['paymentam'] = "Missing Input";
    } else {
        // remove spaces from first name value
        $temp = str_replace(' ', '', $paymentam);
        // test for alpha only
        if (!ctype_digit($temp)) {
            $errors['paymentam'] = "Enter numberics only";
        }
    }
} // end Payment Amount Validation

ctype_digit
检查给定值中的
所有数字
,而不是
float

您可以使用
is\u numeric
检查输入的值是否为
integer
float

<?php
 $temp = "123.12";
  if (!is_numeric($temp)) {
    echo "Enter numeric only";
  }else{
  echo "validated";
  }
?>


!ctype\u float但似乎不起作用如果((字符串)floatval($temp)!=$temp){/*logic*/},正则表达式是否是一个选项
if(preg\u match('/^\d+(?:\.\d+)$/,$temp)
需要一个或多个数字,然后可选地是一个十进制数,后跟一个或多个数字。当然,要匹配整个事件的开始和结束。巧合的是,如果您需要检查它是否只是一个浮点,只需删除
(?:…)?
可选的非捕获组,但保留
\。\d+
如果您想要一种非regx方式来检查小数,那么如果(strlen($temp)==strlen((int)$temp)),如果它是一个浮点(或字符串),长度将改变。其中有3个类型转换,但它可以工作。非常感谢我可以实际输入浮点。