Php/filter validate int

来自菜鸟教程
跳转至:导航、​搜索

PHP FILTER_VALIDATE_INT过滤器

❮PHP筛选器参考

检查变量$ int是否为整数:

 <?php
$int = 100;

if (filter_var($int, FILTER_VALIDATE_INT)) {
    echo("Variable is an integer");
} else {
    echo("Variable is not an integer");
}
?>

定义和用法

FILTER_VALIDATE_INT过滤器用于将值验证为整数。

FILTER_VALIDATE_INT还允许我们为整数变量指定范围。

可能的选项和标志:

  • min_range-指定最小整数值
  • max_range-指定最大整数值
  • FILTER_FLAG_ALLOW_OCTAL-允许八进制数字值
  • FILTER_FLAG_ALLOW_HEX-允许十六进制数值

注意: 在数组中指定选项时。选项必须位于名称为“ options”的关联多维数组中。

更多例子

FILTER_VALIDATE_INT和问题为0 -在上面的示例中,如果$ int设置为0,则上面的函数将返回“变量不是整数”。要解决此问题,请使用以下代码:

例1

修复代码以将0验证为整数:

 <?php
$int = 0;

if (filter_var($int, FILTER_VALIDATE_INT) === 0 || filter_var($int, FILTER_VALIDATE_INT)) {
    echo("Variable is an integer");
} else {
    echo("Variable is not an integer");
}
?>

例2

检查变量是否都是INT类型,并且都在1到200之间:

 <?php
$int = 122;
$min = 1;
$max = 200;

if (filter_var($int, FILTER_VALIDATE_INT, array("options" => array("min_range"=>$min, "max_range"=>$max))) === false) {
    echo("Variable value is not within the legal range");
} else {
    echo("Variable value is within the legal range");
}
?>

❮PHP筛选器参考