Autor | Zpráva | ||
---|---|---|---|
Luky029 Profil * |
#1 · Zasláno: 9. 2. 2010, 20:19:53
Ahoj, asi blbej dotaz ale je v tom rozdil??
if($neco)... vs. if(isset($neco)... |
||
GeneralDv Profil |
#2 · Zasláno: 9. 2. 2010, 20:29:22
IsSet vyhoví když je proměnná k dispozici.
|
||
H13 Profil |
#3 · Zasláno: 9. 2. 2010, 20:39:26 · Upravil/a: H13
... a na rozdíl od prvního isset nevyhodí Notice o tom, že proměnná není definovaná když definovaná není.
První podmínku použiješ v případě, že máš proměnnou, která je TRUE nebo FALSE Druhou v případě, že se ptáš jestli proměnná byla definována a nebo kombinaci: if(isset($neco) && $neco) { then ... } Pokud $neco existuje a je TRUE pak ... Také se dá použít empty() ... |
||
mckay Profil |
#4 · Zasláno: 9. 2. 2010, 20:52:11
Luky029:
Já pro lepší zapamatování mám isSet spojené s tím, že kontroluji, jestli proměnná existuje. Zatím jsem nikdy na tu funkci díky té "existenci" nezapomněl, třeba ti to také pomůže. |
||
Nox Profil |
#5 · Zasláno: 9. 2. 2010, 20:52:34
ad H13
Záleží na tom co přesně potřebuješ, koukni na http://cz.php.net/manual/en/types.comparisons.php Koukám že if($neco) je přesně to stejné jako if(!empty($neco)) .... jen škaredější :) (osobně jsem čekal že tam bude nějaká drobná odchylka, no...překvápko) |
||
Luky029 Profil * |
#6 · Zasláno: 9. 2. 2010, 21:03:02
diky
|
||
AM_ Profil |
#7 · Zasláno: 9. 2. 2010, 21:03:23
IF samo o sobě kontroluje, jaká je hodnota výrazu v závorce přetypovaná na boolean. Např. u čísel 0=false, cokoli jiného=true, podobně pole: prázdné=false, jinak true. takže:
if(5) - podmínka vyhovuje if(array()) - podmínka nevyhovuje. if ovšem nekontroluje existenci proměnné, takže pro korektní vyhodnocení proměnné, o které nevíme, jestli existuje, použijeme isset (true pokud existuje) nebo empty (true pokud neexistuje nebo obsahuje hodnotu ekvivalentní false). Takže: $neco = 0; if (isset($neco)) { echo "ano, sem se to dostane, promenna \$neco existuje"; } if ($neco) { echo "sem se to nedostane, protoze \$neco === 0 == false"; } |
||
blizzboz Profil |
#8 · Zasláno: 10. 2. 2010, 05:49:36 · Upravil/a: blizzboz
isSet() vráti hodnotu true ak bola definovaná premená, if($nieco) sa vyhodnotí ako true za podmienky že premenná nemá hodnotu NULL, 0 alebo false, ak $nieco nebola definovaná skript vyhodí chybu.
|
||
Joker Profil |
#9 · Zasláno: 10. 2. 2010, 08:11:13
blizzboz:
„if($nieco) sa vyhodnotí ako true za podmienky že premenná nemá hodnotu NULL, 0 alebo false“ ...nebo třeba prázdný řetězec... Lepší je říct, že if(výraz) je splněno v případě, že se výraz vyhodnotí jako true. |
||
Časová prodleva: 13 let
|
0