PHP - Filter FILTER_VALIDATE_INT
Beispiel
Überprüfen Sie, ob die Variable $int eine ganze Zahl ist:
<?php
$int = 100;
if (filter_var($int, FILTER_VALIDATE_INT)) {
echo("Variable is an integer");
} else {
echo("Variable is not an integer");
}
?>
Definition und Verwendung
Der Filter FILTER_VALIDATE_INT wird verwendet, um den Wert als Ganzzahl zu validieren.
Mit FILTER_VALIDATE_INT können wir auch einen Bereich für die Integer-Variable angeben.
Mögliche Optionen und Flags:
- min_range - gibt den minimalen ganzzahligen Wert an
- max_range - gibt den maximalen ganzzahligen Wert an
- FILTER_FLAG_ALLOW_OCTAL – erlaubt Oktalzahlenwerte
- FILTER_FLAG_ALLOW_HEX - erlaubt hexadezimale Zahlenwerte
Hinweis: Beim Angeben von Optionen in einem Array. Die Optionen müssen sich in einem assoziativen mehrdimensionalen Array mit dem Namen "Optionen" befinden.
Mehr Beispiele
FILTER_VALIDATE_INT und Problem mit 0 – Wenn im obigen Beispiel $int auf 0 gesetzt wurde, gibt die obige Funktion „Variable is not an integer“ zurück. Um dieses Problem zu lösen, verwenden Sie den folgenden Code:
Beispiel 1
Korrigieren Sie den Code, um 0 als Ganzzahl zu validieren:
<?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");
}
?>
Beispiel 2
Überprüfen Sie, ob eine Variable sowohl vom Typ INT als auch zwischen 1 und 200 ist:
<?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-Referenz