Autor | Zpráva | ||
---|---|---|---|
Jcas Profil * |
#1 · Zasláno: 24. 10. 2012, 10:41:58
Toto je absolutně triviální dotaz, tak se omlouvám. Ale nikde jsem podobný dotaz nenašel.
Je správně všechno? Je to validní? <?php $admin = true; if($admin==true) {} //tady není co řešit, ale pak jsem někde viděl if($admin) {} //asi je to naprosto to samé A tedy if(($admin!=true)==(!$admin)) {} //je podmínka splněna? Také naprosto stejné // A poslední je taky správný zápis??? if(!$admin||!$pravda) {} ?> Ptám se proto, že zatím neustále jak blb píšu pořád rovno, nebo nerovno false, nebo true. |
||
panther Profil |
#2 · Zasláno: 24. 10. 2012, 11:01:38
Jcas:
„Je to validní?“ jak validní? syntakticky to je celé správně. Proč si nezkusíš, která podmínka projde a která ne? Třetí podmínka, bez ohledu na to, co vrací (to si zkus sám) je nesmyslná, přestože syntakticky správná. Dej si ještě pozor na různé hodnoty, 0, null, false a porovnávání == , resp. === . Zkus si příklady i s nimi, ne jen s pouhým true/false.
|
||
Sir Tom Profil |
#3 · Zasláno: 24. 10. 2012, 11:02:20
Jcas:
if(($admin!=true)==(!$admin)) je true (false==false)
if(!$admin||!$pravda) jakou hodnotu má $pravda?
|
||
Tori Profil |
#4 · Zasláno: 24. 10. 2012, 14:12:04
Jcas:
„if(!$admin||!$pravda) {}“ Záleží na tom, jak to myslíte: if (!$a || !$b) // projde, pokud $a nebo $b nebo obě jsou FALSE. if (!$a && !$b) // projde jen pokud obě proměnné jsou FALSE if ($a != 1 || $a != 2) // projde vždy, ať už $a obsahuje cokoli if ($a != 1 && $a != 2) // projde pokud $a nemá hodnotu 1 ani 2 if (!in_array($a, array(1, 2))) // totéž co předchozí |
||
peta Profil |
#5 · Zasláno: 24. 10. 2012, 15:58:14
Vzdyt si to vsechno rozepis, ne? V dokumentaci je to http://php.net/manual/en/language.operators.logical.php . Pro google je to https://www.google.cz/search?q=boolean+algebra . Omezene se to uz uci na zakladni skole jako vety typu jestlize neco, pak neco. A ty mas pak dokazovat, kdy to plati. na stredni by se to melo delat podrobneji v matice, lepe v technickych oborech. Pri programovani je to zaklad, prvni ucivo. <?php $admin = true; if($admin==true) {echo "1=true";} if($admin) {echo "2=true";} $a = $admin!=true; $b = !$admin; if($a) {echo "3=true";} if($b) {echo "4=true";} if($a==$b) {echo "5=true";} if(!$b||!$pravda) {echo "6=true";} ?> $admin = true !$admin = false $pravda je undefined, pro podminky je to false (protoze se v kodu nikde nevyskytuje jina hodnota) false OR false = false |
||
PanQ Profil * |
#6 · Zasláno: 27. 10. 2012, 01:18:02
Jcas:
Pokud chapu spravne tak ti nebylo zodpovezona cast dotazu: if ($a) lze zapsat take ja if ($a == true) potazmo if (!$a) lze zapsat take jako if ($a == false ) zapis if obecne dela to kdyz vysledny vyraz v () je 1 takze pak zapis ($a) testuje zda je $a true a nemusis to zapisovat jako ($a == true ). To same plati pro dalsi elementy jako je napr. while vyrokovou logiku nejlepe pochopis tak jak ti radi ostatni nahore - zkousej :) |
||
Časová prodleva: 11 let
|
0