Filtr PHP FILTER_VALIDATE_INT
Příklad
Zkontrolujte, zda je proměnná $int celé číslo:
<?php
$int = 100;
if (filter_var($int, FILTER_VALIDATE_INT)) {
echo("Variable is an integer");
} else {
echo("Variable is not an integer");
}
?>
Definice a použití
Filtr FILTER_VALIDATE_INT se používá k ověření hodnoty jako celého čísla.
FILTER_VALIDATE_INT nám také umožňuje zadat rozsah pro celočíselnou proměnnou.
Možné možnosti a příznaky:
- min_range - určuje minimální celočíselnou hodnotu
- max_range - určuje maximální celočíselnou hodnotu
- FILTER_FLAG_ALLOW_OCTAL - umožňuje osmičkové číselné hodnoty
- FILTER_FLAG_ALLOW_HEX - umožňuje hexadecimální číselné hodnoty
Poznámka: Při zadávání voleb v poli. Možnosti musí být v asociativním vícerozměrném poli s názvem „options“.
Další příklady
FILTER_VALIDATE_INT a problém s 0 – ve výše uvedeném příkladu, pokud byl $int nastaven na 0, výše uvedená funkce vrátí „Proměnná není celé číslo“. Chcete-li tento problém vyřešit, použijte níže uvedený kód:
Příklad 1
Opravte kód pro ověření 0 jako celého čísla:
<?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");
}
?>
Příklad 2
Zkontrolujte, zda je proměnná obě typu INT a mezi 1 a 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");
}
?>
❮ Reference filtru PHP