(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
ctype_digit — Chequear posibles caracteres numéricos
Verifica si todos los caracteres en la string entregada,
text, son numéricos.
textLa cadena probada.
Nota:
Si se proporciona un entero en el rango -128 y 255 inclusive, será interpretado como el valor ASCII de un solo carácter (los valores negativos se verán añadir 256 para permitir caracteres en el rango ASCII extendido). Cualquier otro entero será interpretado como una cadena de caracteres que contiene los dígitos decimales del entero.
Desde PHP 8.1.0, pasar un argumento diferente de una cadena está obsoleto. En el futuro, el argumento será interpretado como una cadena de caracteres en lugar de un punto de código ASCII. Según el comportamiento deseado, el argumento debe ser convertido a string o debe realizarse una llamada explícita a chr().
Devuelve true si cada caracter del texto es un
dígito decimal, o false de lo contrario.
Cuando se llama con una cadena vacía, el resultado será siempre false.
Ejemplo #1 Un ejemplo de ctype_digit()
<?php
$cadenas = array('1820.20', '10002', 'wsl!12');
foreach ($cadenas as $caso_prueba) {
if (ctype_digit($caso_prueba)) {
echo "La cadena $caso_prueba consiste completamente de dígitos.\n";
} else {
echo "La cadena $caso_prueba no consiste completamente de dígitos.\n";
}
}
?>El ejemplo anterior mostrará :
La cadena 1820.20 no consiste completamente de dígitos. La cadena 10002 consiste completamente de dígitos. La cadena wsl!12 no consiste completamente de dígitos.
Ejemplo #2 Un ejemplo de ctype_digit() comparando strings con integers
<?php
$numeric_string = '42';
$integer = 42;
ctype_digit($numeric_string); // true
ctype_digit($integer); // false (ASCII 42 es el caracter *)
is_numeric($numeric_string); // true
is_numeric($integer); // true
?>