PHP FILTER_VALIDATE_INT Filtro
Esempio
Controlla se la variabile $int è un numero intero:
<?php
$int = 100;
if (filter_var($int, FILTER_VALIDATE_INT)) {
echo("Variable is an integer");
} else {
echo("Variable is not an integer");
}
?>
Definizione e utilizzo
Il filtro FILTER_VALIDATE_INT viene utilizzato per convalidare il valore come intero.
FILTER_VALIDATE_INT ci consente anche di specificare un intervallo per la variabile intera.
Possibili opzioni e flag:
- min_range - specifica il valore intero minimo
- max_range - specifica il valore intero massimo
- FILTER_FLAG_ALLOW_OCTAL - consente valori numerici ottali
- FILTER_FLAG_ALLOW_HEX - consente valori numerici esadecimali
Nota: quando si specificano le opzioni in una matrice. Le opzioni devono trovarsi in un array multidimensionale associativo con il nome "opzioni".
Altri esempi
FILTER_VALIDATE_INT e problema con 0 - Nell'esempio sopra, se $int è stato impostato su 0, la funzione sopra restituirà "La variabile non è un numero intero". Per risolvere questo problema, utilizzare il codice seguente:
Esempio 1
Correggi il codice per convalidare 0 come intero:
<?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");
}
?>
Esempio 2
Controlla se una variabile è di tipo INT e tra 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");
}
?>
❮ Riferimento filtro PHP