|
||||||||||||||||||||||||||||||||||||||||||||||||
Menu
Distributions (131)
Software (10844)
|
PHP (12) - PodmínkyPHP má samozřejmě příkazy pro řízení toku programu. Dnes se podíváme na podmínky.
Tok programu, tedy i tok skriptu v PHP jen zřídkakdy probíhá od
začátku
do konce po jedné linii. Většinou chcete reagovat na okolní podmínky. K
tomu slouží v PHP, stejně jako snad ve všech ostatních exisujících
programovacích jazycích podmínky. Podmínky fungují v tom nejjednodušším případě tak, že nejprve je vyhodnocen určitý výraz. Je-li výraz pravdivý, provede se příkaz. PHP má pro podmínku klíčové slovo if. Typický příklad můžeme vidět níže: <? Vidíme, že logický výraz je v tomto příkladu reprezentován proměnnou. Když je podmínka splněna, provede se příkaz echo; to bude v našem případě vždy. Co když ale budeme chtít provést více než jeden příkaz? A co když budeme chtít specifikovat i příkaz, který se má provést při nesplnění podmínky? To demonstrujeme v následující ukázce, která je rozšířením původního příkladu: <? Jak vidíte, při nesplnění podmínky postupuje program větví, která začíná slovem else. Z příkladu také vyplývá, že více příkazů může bých chápáno jako jeden příkaz, když jsou uzavřeny do složených závorek { a }. Známe ještě jednu formu příkazu if. Její rozšíření spočívá v tom, že zavádí klíčové slovo elseif a program tak může reagovat na několik podmínek za sebou. Dejme tomu: <? Kód je myslím výmluvný; všimněte si, že větví elseif může být i
více. Není vůbec nutné v každé větvi vyhodnocovat stejný výraz,
důležité je pouze to, aby se vyhodnocoval výraz vracející logickou
hodnotu. Podmínka if má v PHP i alternativní syntaxi zápisu. Níže uveďme naše tři příklady přepsané alternativně: <? Jak je z ukázky pěkně vidět, někdy to kód zkrátí, jindy ne. Praxe je
ta, že se to většinou mixuje. Příkaz switchJak bylo vidět z příkladu s browsery, často potřebujeme opakovaně vyhodnocovat stejný výraz a podle jeho hodnoty provést odpovídající akci ve skriptu. K tomu může sloužit příkaz if, nebo má PHP příkaz switch. Přepišme náš "browserový" příklad pomocí switch: <? K dispozici je rovněž alternativní syntaxe <? Funguje to následovně: Jedřív se zjistí hodnota proměnné
$browser. Pak se procházejí jednotlivé větve a když se narazí na
odpovídající případ, provede se větev až k příkazu break, nebo do endswitch. Default je větev, kterou
můžeme volitelně zařadit pro případ, že
nevyhoví nic z předchozích. Když zapomenete na příkaz break, provede se
kód až k nejbližšímu dalšímu příkazu break nebo do konce podmínky (což
se někdy dělá schválně a jindy to vede k chybám). Poznámky k podmínkám
|
Search Software
Search Google
|
||||||||||||||||||||||||||||||||||||||||||||||
©Pavel Kysilka - 2003-2024 | maillinuxsoft.cz | Design: www.megadesign.cz |