Exemplo
Verifique se a variável $ int é um inteiro:
<?php
$int = 100;
if (!filter_var($int, FILTER_VALIDATE_INT) ===
false) {
echo("Variable is an integer");
} else {
echo("Variable
is not an integer");
}
?>
Exemplo executar » Definição e Uso
O filtro FILTER_VALIDATE_INT é usada para validar o valor de um número inteiro.
FILTER_VALIDATE_INT também nos permite especificar um intervalo para a variável inteiro.
Opções possíveis e bandeiras:
- min_range - Especifica o valor mínimo número inteiro
- max_range - Especifica o valor máximo número inteiro
- FILTER_FLAG_ALLOW_OCTAL - permite valores de número octal
- FILTER_FLAG_ALLOW_HEX - permite valores numéricos hexadecimais
Note: Ao especificar opções em uma matriz. As opções devem estar em uma matriz multidimensional associativo onde o nome "options" .
mais Exemplos
FILTER_VALIDATE_INT e problema com 0 - No exemplo acima, se $ int foi definido como 0, a função acima irá retornar "Variable is not an integer" . Para resolver esse problema, use o código abaixo:
Exemplo 1
Corrigir o código para validar 0 para o número inteiro:
<?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");
}
?>
Exemplo executar » exemplo 2
Verifique se uma variável é tanto do tipo INT, e entre 1 e 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");
}
?>
Exemplo executar » <PHP Filtrar Referência