È possibile utilizzare ctype_alpha per verificare i caratteri alfabetici.
Analogamente, è possibile utilizzare ctype_digit per verificare i caratteri numerici.
is_numeric
- Verifica se una variabile è un numero o una stringa numerica
is_numeric()
esempio:
<?php
$tests = array(
"42",
0b10100111001,
"not numeric",
array(),
9.1
);
foreach ($tests as $element) {
if (is_numeric($element)) {
echo "'{$element}' is numeric", PHP_EOL;
} else {
echo "'{$element}' is NOT numeric", PHP_EOL;
}
}
?>
Il precedente esempio:
'42' is numeric
'1337' is numeric
'not numeric' is NOT numeric
'Array' is NOT numeric
'9.1' is numeric
Dove ctype_digit()
e is_numeric()
differisce?
esempio confrontando stringhe con numeri interi:
<?php
$numeric_string = '42';
$integer = 42;
ctype_digit($numeric_string); // true
ctype_digit($integer); // false (ASCII 42 is the * character)
is_numeric($numeric_string); // true
is_numeric($integer); // true
?>
fonte
2016-05-28 12:32:49
E 'possibile usare un'espressione regolare su tutta la stringa invece di iterare su ogni personaggio? –
Controlla http://stackoverflow.com/q/9721636/1169798 e http://php.net/manual/en/function.is-numeric.php – Sirko
'is_numeric()' dovrebbe fare il trucco per controllare i numeri. – tradyblix