Довольно часто при программировании приходилось проверять определенную переменную, является ли она числом или нет. Стандартные функции не совсем подходили, поскольку пользователь мог ввести число через запятую, точку, и даже русскую "б" (запятая на клавиатуре) и чтобы сделать удобный интерфейс я принимал любое число в таком виде.
А проверял эту переменную таким образом:
	//только допустимые символы
	   function onlyDigits($strn) {
	     if (strlen($strn) != 0) { //если символов нет, значит точно не
	        $strn = strtolower($strn);
	     $vwl = array("1","2","3","4","5","6","7","8","9","0",",",".","б"); //допускаемые символы, и буква "б" - это ж запятая
	     $strn = str_replace($vwl, "", $strn); //заменяем
	     if (strlen($strn) == 0) return true; //прошла проверку
	      else return false; //не прошла проверку
	     } else return false; //не прошла проверку
	   }
Вы можете задать свой массив допустимых символов.

 
						
