пример
Проверьте, если переменные $ ИНТА является целым числом:
<?php
$int = 100;
if (!filter_var($int, FILTER_VALIDATE_INT) ===
false) {
echo("Variable is an integer");
} else {
echo("Variable
is not an integer");
}
?>
Выполнить пример » Определение и использование
FILTER_VALIDATE_INT фильтр используется для проверки значения как целого.
FILTER_VALIDATE_INT также позволяет задать диапазон для целой переменной.
Возможные варианты и флаги:
- min_range - определяет минимальное целое значение
- max_range - указывает максимальное целое значение
- FILTER_FLAG_ALLOW_OCTAL - позволяет восьмеричные значения чисел
- FILTER_FLAG_ALLOW_HEX - позволяет шестнадцатеричные значения чисел
Note: При задании параметров в массиве. Эти параметры должны быть в ассоциативном многомерный массив с именем "options" .
Еще примеры
FILTER_VALIDATE_INT и проблема с 0 - В приведенном выше примере, если $ ИНТ был установлен в 0, то функция выше будет возвращать "Variable is not an integer" . Чтобы решить эту проблему, используйте код ниже:
Пример 1
Закрепить код для проверки 0 в виде целого числа:
<?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");
}
?>
Выполнить пример » Пример 2
Проверьте, является ли переменная оба типа INT, и от 1 до 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");
}
?>
Выполнить пример » <PHP Filter Reference