Ragazzi ma è normale che questo controllo fallisce ?? Cioè gli passo un intero ma fallisce. Com'è possibile?
Codice PHP:
$numero = $_GET['num']; if(is_int($numero)) { echo '$numero è un intero'; }
Ragazzi ma è normale che questo controllo fallisce ?? Cioè gli passo un intero ma fallisce. Com'è possibile?
Codice PHP:
$numero = $_GET['num']; if(is_int($numero)) { echo '$numero è un intero'; }
Prova così,devi stampare $numero è un intero fra doppi apici,se il controllo non te lo fa vuol dire che il parametro non èintero:
Codice PHP:$numero = $_GET['num'];
if(is_int($numero))
{
echo "$numero è un intero";
}
else
{
echo"non è un intero";
}
mi stampa non è un intero.
Ma il fatto è che l'input lo do io da un input type="text" !!!
Com'è possibile ??
Beh, quando non leggi il manuale, tutto diventa possibile..
Il valore che ottieni è una stringa,se ti interessa convertirlo in intero:
$numero=(int)$numero;
Ah, quindi quando si acquisisce da un text è sempre una stringa...
Per controllare se è un numero devo usare is_numeric();
Giusto?
E scusate controllo se è un numero ok , ma come posso poi controllare se è un int o un float??
Devo prima fare un cast??
Grazie per la disponibilità!
GiustoOriginariamente inviato da JavaFurbix
Ah, quindi quando si acquisisce da un text è sempre una stringa...
Per controllare se è un numero devo usare is_numeric();
Giusto?
No, basta guardare is_numeric, e poi verificare (con strpos o quello che vuoi) se c'e' il separatore decimale che ti aspetti che ci sia.E scusate controllo se è un numero ok , ma come posso poi controllare se è un int o un float??
Devo prima fare un cast??
Grazie per la disponibilità!
Se c'e', e' formalmente una float, altrimenti int.
Con il cast tu non controlli il tipo, lo modifichi.
dimenticavo, c'e' anche questo trucco:
Codice PHP:$num = $_GET['num'];
if(is_numeric($_GET['num'])){
$num = $num+0;
if(is_float($num)){
echo 'float';
}else{
echo 'int';
}
}else{
echo 'non numerico';
}
Ciao,
per la cronaca puoi ottenere la stessa
cosa anzi è da preferire
http://www.php.net/manual/en/function.intval.php
se il valore è maggiore di 0 hai il tuo int.
![]()
Without faith, nothing is possible. With it, nothing is impossible
http://ilwebdifabio.it