> Faqs > Cómo validar un entero en PHP o una cadena con todos los caracteres numéricos

Cómo validar un entero en PHP o una cadena con todos los caracteres numéricos

Tengo una variable en PHP que quiero validar como entero, si se da uno de estos supuestos:

  • Que la variable es de tipo entero (con lo que estamos seguros que su contenido es un número sin decimales)
  • Que la variable sea una cadena de texto en la que solamente haya caracteres numéricos (cualquier número de dígitos del 0 al 9)

Puede ocurrir cualquiera de estos supuestos y en ellos debe dar el entero como válido.

Respuestas

PHP ofrece dos funciones para validar los enteros, pero is_int() solo valida valores de tipo entero. Y por su parte ctype_digit() solo valida correctamente valores de tipo string. Así que lo que buscaba es una unión de ambas funciones.

He realizado esta función de PHP que realiza el objetivo que se estaba buscando, de validar un valor como entero.

function isIntegerOrStringWhithNumericCharacters($value) {
    return is_int($value) || ctype_digit($value) ? true : false;
}
Guillermo
119 4 8 8