PHP FILTER_VALIDATE_INT 过滤器
实例
检查变量 $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 Filter 参考手册