Я недавно обнаружил, что метод, который я использовал для проверки пользовательского ввода, принимает некоторые значения, которыми я не особенно доволен.Мне нужно, чтобы он принимал только натуральные числа (1
, 2
, 3
и т. Д.) Без цифр.
Мой метод выглядит следующим образом:
function is_natural($str)
{
return preg_match('/[^0-9]+$/', $str) ? false : $str;
}
Таким образом, он должен возвращать false, если он находит что-то еще, кроме целого натурального числа.Проблема в том, что он принимает строки типа "2.3"
и даже "2.3,2.2"