Какую функцию правильно использовать для проверки на число?

  • Автор темы Автор темы golos81
  • Дата начала Дата начала

golos81

Новичок
Какую функцию правильно использовать для проверки на число?

Если мне надо проверить, является ли значение переменной числом, что использовать: is_numeric() или is_ int() и почему?

И чем они отличаются?
 
is_int() проверяет , является ли значение переменной integer, то есть от -30к с копейками до 30к с копейками ( насколько я помню ) , а is_numeric() проверяется значение переменной на число , или числовую строку , и само числовое значение не имеет значение , главное что оно числовое ( туда же включено и float значение с 'e' )
 
Автор оригинала: Koc9k
is_int() проверяет , является ли значение переменной integer, то есть от -30к с копейками до 30к с копейками ( насколько я помню ) , а is_numeric() проверяется значение переменной на число , или числовую строку , и само числовое значение не имеет значение , главное что оно числовое ( туда же включено и float значение с 'e' )
Спасибо!
 
> то есть от -30к с копейками до 30к

да, реально смешно.. видимо у него пхп на win16 работает, типа IBM PC 386 ;-)
 
так, читаем мануал дальше, есть ещё одно важное "отличие"
 
Автор, запусти:
PHP:
if (is_numeric("16")) echo 'numeric<br>'; else echo 'not numeric<br>';
if (is_int("16")) echo 'int'; else echo 'but not int';

p/s/ ctype_* рулит :)
 
PHP:
function isInteger($var)
{
 $var = strval($var);
 return ctype_digit(substr($var,0,1) == '-'?substr($var,1):$var);
}
Более подходящей на все случаи жизни не родил) Т.к. ctype_digit вернет FALSE для int'ов и float'ов, и строк представляющих собой запись отрицательного целого.
 
Автор оригинала: DiMA
> то есть от -30к с копейками до 30к

да, реально смешно.. видимо у него пхп на win16 работает, типа IBM PC 386 ;-)
ой =))) Я почему-то выдал паскалевский integer ) Тупанул
 
AmdY
Глупость сейчас сказал ты.
В борланд и турбо паскале тип integer 16-и битный. Это только в делфи он стал 32-х битным.
 
phprus, да причём здесь паскаль или дельфи, вопрос в n-битности, от которой и зависит размер.
как-то смешно слышать паскалевский integer, дельфийский integer ...
 
Сверху