Dre*_*rew 5 html php validation int
我的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)));
Run Code Online (Sandbox Code Playgroud)
filter_var()false如果值是非整数或超出范围,则返回布尔值,或者返回有效值本身(作为整数.)
我会使用is_numeric(),因为用户输入总是以字符串形式出现(据我所知)。
保证某物是整数的另一种方法是将其转换......
$id = (int) $id;
Run Code Online (Sandbox Code Playgroud)