codice php anomalo

Forum per tutti i neofiti e gli esperti che vogliono proporre o rispondere ad argomenti che riguardano lo sviluppo di apllicazioni web basate in aprticolare su Html - Css - Php - MySql, ma non solo...

Moderatore: Michele

codice php anomalo

Messaggioda Michele » lun ott 15, 2007 9:21 am

<?php
$pino = 0;
if($pino == "uno")
{
echo "sono uguali";
}
else
{
echo "non sono uguali";
}
?>

perchè questo codice mi restituisce "sono uguali"?
Sembrerebbe errata la gestione del casting!
Secondo me ragiona così:
lui per fare la comparazione fa il casting di 0 in stringa!
Una volta fatto gestisce secondo me in questa maniera la condizione:
if ((stringa) == (stringa))
cioè le gestisce come condizioni seprate!!!
dato che if (stringa) restituisce true (perchè abbiamo fatto il casting) lui vede qualcosa del tipo
if (true == true)
e quindi da il comportamento anomalo!
Potrei sbagliare... :roll:
Michele
 
Messaggi: 308
Iscritto il: ven mar 17, 2006 2:14 am

Messaggioda liuggio » lun ott 15, 2007 11:23 am

Michelino

io non so perche da quel risultato
pero' se vuoi comparare due stringhe
e vuoi un risultato "Binary safe"
devi usa strcmp
infatti se fai
if(strcmp($pino,"uno")==0)
esce non uguali!
liuggio....
[debian like]
liuggio
 
Messaggi: 5
Iscritto il: dom apr 02, 2006 9:56 pm


Torna a Webmaster

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite

cron