PHP. Проверка на число в GET и POST запросах.
Так как все значения параметров, передаваемых в GET и Метод HTTP POST методом, всегда передаются как строки возникает вопрос проверки на стороне сервера.
Как в PHP проверить является ли переменная целым положительным число?
- Первый вариант. При помощи регулярных выражений (Шпаргалка RegExp: Метасимволы, Максимализм квантификатора, Алфавиты и блоки)
if (preg_match('/^\+?\d+$/', $value)) { echo "Целое положительное число :-)"; }
- Второй вариант. Фильтрация(валидация) данных
if (!empty($_GET['value'])) { $value = $_GET['value']; $value = filter_var($value, FILTER_VALIDATE_INT, array("options" => array('min_range' => 100000000, 'max_range' => 999999999999))); if ($value == false) { echo '-1'; exit; } }


