Latest web development tutorials
 

PHP FILTER_VALIDATE_INT Filter

< PHP Filter Reference

Example

Check if the variable $int is an integer:

<?php
$int = 100;

if (!filter_var($int, FILTER_VALIDATE_INT) === false) {
    echo("Variable is an integer");
} else {
    echo("Variable is not an integer");
}
?>
Run example »

Definition and Usage

The FILTER_VALIDATE_INT filter is used to validate value as integer.

FILTER_VALIDATE_INT also allows us to specify a range for the integer variable.

Possible options and flags:

  • min_range - specifies the minimum integer value
  • max_range - specifies the maximum integer value
  • FILTER_FLAG_ALLOW_OCTAL - allows octal number values
  • FILTER_FLAG_ALLOW_HEX - allows hexadecimal number values

Note: When specifying options in an array. The options must be in an associative multidimensional array with the name "options".


More Examples

FILTER_VALIDATE_INT and Problem With 0 - In the example above, if $int was set to 0, the function above will return "Variable is not an integer". To solve this problem, use the code below:

Example 1

Fix code to validate 0 as integer:

<?php
$int = 0;

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

Example 2

Check if a variable is both of type INT, and between 1 and 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");
}
?>
Run example »

< PHP Filter Reference