Autor | Zpráva | ||
---|---|---|---|
grilled_chicken Profil |
#1 · Zasláno: 5. 6. 2008, 19:40:11 · Upravil/a: grilled_chicken
$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 |
#2 · Zasláno: 5. 6. 2008, 19:43:19
== porovnává pouze hodnoty (tzn. přetypovává)
=== slouží pro porovnání hodnoty i typu... |
||
grilled_chicken Profil |
#3 · Zasláno: 5. 6. 2008, 20:19:23
ale aj tak ...
$in = "abc" => $zn = 0 "abc" sa nerovna 0 tak preco ? |
||
Davex Profil |
#4 · Zasláno: 5. 6. 2008, 20:42:14
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 |
#5 · Zasláno: 5. 6. 2008, 20:43:34
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 |
||
Časová prodleva: 16 let
|
0