Проверка правильности записи числа в строке

Задача
Вы хотите быть уверенным, что строка содержит число. Например, требуется проверить правильность возраста, введенного пользователем в поле ввода формы.

Решение
Обратитесь к функции is_numeric():
if (is_numeric('five')) { /* false */ }
if (is_numeric(5))      { /* true  */ }
if (is_numeric('5'))    { /* true  */ }
if (is_numeric(-5))     { /* true  */ }
if (is_numeric('-5'))   { /* true  */ }


Обсуждение
Помимо работы с числами функция is_numeric() может также применяться к числовым строкам. Разница здесь в том, что целое число 5 и строка 5 в PHP с технической точки зрения не идентичны. Конечно, полезно, что функция is_numeric() правильно анализирует
десятичные числа, такие как 5.1; однако числа с разделителем тысячного разряда, такие как 5,100, заставляют функцию is_numeric() вернуть false.

Для того чтобы убрать разделитель тысячного разряда из числа, перед функцией is_numeric() вызывается функция str_replace():

is_numeric(str_replace($number, ',', ''));


Для проверки числа на принадлежность к определенному типу существует множество связанных функций с именами, не требующими объяснений: is_bool(), is_float() (или is_double() или is_real(); все это одно и то же) и is_int() (или is_integer() или is_long()).
Теги:
Проверка правильности
Добавлено: 12 Июля 2018 20:10:30 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...