我的 HTML 表单上的选择字段可能会产生 1 到 5(整数)。使用 is_int
每次都会拒绝它,因为 $_POST['rating']
被视为一个字符串。
在查阅 PHP 手册后,似乎 is_numeric() && !is_float()
是在这种情况下验证整数的正确方法。
但我想确定,所以请确认或驳斥我的逻辑。
最佳答案
我可能会使用这样的东西:
$value = filter_var(
$_POST['rating'],
FILTER_VALIDATE_INT,
array('options' => array('min_range' => 1, 'max_range' => 5)));
filter_var()
如果值是非整数或超出范围,将返回 bool 值 false
,或者返回有效值本身(作为整数。)
关于php - is_int、is_numeric、is_float 和 HTML 表单验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5486926/