Validar si una cadena es un número en PHP

Validar si una cadena es un número en PHP

PHP

Con esta función podremos comprobar si una cadena es un número o no. Remarcar que en ningún momento comprobamos el tipo de la variable.

function is_number($str){
	$str = str_replace(',', '.', $str);
	if(!is_numeric($str)) return false;

	$str = (int)$str;
	if(!is_integer($str) AND !is_float($str)) return false;

	return true;

}

var_dump(is_number(12)); //true
var_dump(is_number("12")); //true
var_dump(is_number(-12)); //true
var_dump(is_number("-12")); //true
var_dump(is_number(1.2)); //true
var_dump(is_number("1,2")); //true
var_dump(is_number("a")); //false
var_dump(is_number(0)); //true

Leave a reply