Autor Zpráva
grilled_chicken
Profil
$zn = (int) $in;
                    echo $zn;
                    echo $in;
                    
                    if ($zn==$in)
                         {
                              return true;
                         }
                    else
                         {
                              return false;
                         }
               } 


nech hodim do $in cokolvek vzdy to hodi true, neviete co je s tym ? dalsi php bug ?
nightfish
Profil
== porovnává pouze hodnoty (tzn. přetypovává)
=== slouží pro porovnání hodnoty i typu...
grilled_chicken
Profil
ale aj tak ...
$in = "abc"
=> $zn = 0
"abc" sa nerovna 0 tak preco ?
Davex
Profil
Při porovnávání číselné hodnoty a řetězce se řetězec vždy nejdříve převede na číslo. Blíže popsáno v dokumentaci PHP.
nightfish
Profil
grilled_chicken
"abc" sa nerovna 0 tak preco ?

v manuálu se píše: If you compare an integer with a string, the string is converted to a number.
Jestliže porovnáváte integer s řetězcem, převede se řetězec se načíslo.
$in = "abc"; // řetězec
$zn = (int)$in = 0; // číslo

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0