PHP-如何使用!浮动中的ctype?
我通常总是使用!用php输入数字,这样我就可以输入数字了。但是,我有一个任务需要输入float(例如:123.12),我不知道,因此请求帮助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
下面是我的代码:
// 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个类型转换,但它可以工作。非常感谢我可以实际输入浮点。