Podmienka

Doteraz sme používali iba jediný príkaz - echo. Tento príkaz káže počítaču, aby vypísal či už premennú, nami zadaný text alebo hocičo iné, čo mu za príkazom priradíme. Kód programu v jazyku PHP ide od hora dole. To znamená, že po spustení programu sa vykonávajú príkazy postupne smerom od hora dole. Spustenie programu prechádza riadok po riadku a číta, čo je v kóde napísané. Čítanie nášho posledného príkladu vyzeralo asi takto :

 

<?php

$premenna_typu_integer = 3;

echo "Moj stryko ma ".$premenna_typu_integer." deti.";

 


Na prvom riadku program nájde operáciu priradenie – deklaráciu premennej. V pamäti počítača uloží premennú s názvom premenna_typu_integer a vloží do nej hodnotu číslo 3. Program si pamätá - má uloženú cestu do pamäte na dané miesto podľa jej názvu – identifikátora. Na druhom riadku nájde program príkaz echo. Načíta si, čo je za príkazom a daný príkaz vykoná okamžite. Vždy, keď našu premennú niekde v kóde voláme (je použitý napríklad v príkaze echo), program si ju nájde v pamäti počítača (lebo si pamätá cestu a vie jej názov) a načíta si jej obsah.

 

Dôležitá informácia z popisu chodu programu bola, že príkaz echo sa vykoná okamžite. Informačné systémy (webstránky, programy, mobilné aplikácie) musia byť univerzálne. Čo to znamená? Predstavte si klasický počítačový program pre prostredie Windows (spúšťací - s príponou exe). Ako iste viete, operčaný systém Windows má viacero verzií a každý verzia v sebe tiež obsahuje niečo iné, podľa toho, ako si používateľ napríklad často updatuje OS. V kóde programu musí byť ale zabezpečené, aby správanie programu bolo bezchybné a rovnaké na akomkoľvek prostredí. Zabezpečuje sa to tak, že v kóde programu sa odlišuje správanie programu na základe prostredia. Jednoducho, pýtame sa počítača otázky ak je toto, tak potom urob toto. Ak to nie je toto, tak potom urob toto. Alebo ak to nie je takto, tak v tom prípade to nerob a podobne. Poďme si to ale ukázať prakticky.

 

Veta ak je splnené toto, tak potom urob tento príkaz, je podmieňovacia veta, pretože si v nej kladieme podmienku (ak - tak). Takéto podmienky (conditions) vieme zadávať aj počítaču pomocou príkazu if (ak). Pomocou podmienok vieme v programoch odlíšiť prípady a na základe rôznych prípadov vykonať rôzne príkazy. Poďme si to ale vysvetliť na konkrétnom príklade. Na tento príklad sa naučíme tretí typ premennej v PHP (doteraz sme sa naučili string a integer) a to je boolean. Nejdeme sa zaťažovať tým, prečo sa tento typ volá tak ako sa volá a od čoho je to odvodené, dôležité pre nás je, že čo doňho môžeme vložiť. Iste vás to zaujíma, pretože text sme už vkladali a tým sme vytvárali premennú typu string a číslo takisto, vytvárali sme premenné typu integer. Tento typ premennej môže obsahovať len dve rôzne hodnoty a to je TRUE (pravda) a FALSE (nepravda). Premenná tohto typu slúži niečo ako prepínač, napríklad ako vypínač na lampe, buď je zapnutý a lampa svieti (TRUE) alebo je vypnutý a lampa nesvieti (FALSE). Jej praktické využitie si ukážeme v nasledujúcom príklade.

 

Použijeme naše prirovnanie k lampe a skúsime použiť podmienku. Spravíme si program, ktorý podľa toho, čo je uložené v premennej typu boolean, vypíše, či je lampa zapnutá. Najprv si vytvoríme premennú typu boolean a vložíme do nej hodnotu FALSE (bez úvodzoviek). Potom použijeme podmienku if. Príkaz if sa používa nasledovne. Napíše sa slovo if, za ním nasleduje v okrúhlych zátvorkách podmienka na splnenie (otázka) a za podmienkou v zátvorke nasleduje priestor na príkazy, ktoré sa majú vykonať a sú ohraničené množinovými zátvorkami ( {} ). Medzi tieto zátvorky vypíšeme, čo sa má stať, ak je podmienka splnená. Vyzerá to asi takto:

 

<?php
$premenna_typu_boolean = FALSE;
echo "Pytanie sa, ci je podmienka splnena - pokus 1 : ";
if($premenna_typu_boolean){
       echo "Lampa svieti.";
}
echo "<br>";
$premenna_typu_boolean = TRUE;
echo "Pytanie sa, ci je podmienka splnena - pokus 2 : ";
if($premenna_typu_boolean){
       echo "Lampa svieti.";
}

 

Na prvom riadku si do premennej typu boolean vkladáme hodnotu false (nepravda). Nasleduje informačný výpis pomocou príkazu echo, za ktorým nasleduje podmienka if. V zátvorke sa pýtame na podmienku, či platí – či je pravda to, čo je v zátvorke. V zátvorke je premenna premenna_typu_boolean, ktorý obsahuje hodnotu FALSE, čo je nepravda, takže podmienka nie je splnená. Všetko, čo sa nachádza v množinových zátvorkách za totou podmienkou, sa nevykoná. Za prvým použitím podmienky if vypisujeme špeciálny text <br>. Vykonanie tohto pírkazu nám zabezpečí zalomenie riadku (br – break), to znamená, že ďalší príkaz echo sa vypíše na nový riadok, pre lepšiu prehľadnosť. Prečo to tak je, nie je teraz podstatné, k tomu sa dostaneme neskôr. Na ďalšom riadku si do našej premennej vkladáme tentoraz hodnotu TRUE (pravda) a použijeme informačný výpis. Použijeme tú istú podmienku ako na začiatku. Tentoraz je však podmienka splnená, pretože v zátvorkách za príkazom if je podmienka splnená. Prečo? V zátvorkách sa pýtame, platí to, čo je v zátvorkách? Je to pravda? Naša premenná obsahuje hodnotu TRUE, čo sa berie v jazyku PHP ako pravda, takže všetko, čo sa nachádza za týmto príkazom v množinových zátvorkách, sa výkoná. Takže náš výstup by mal vyzerať takto :

 

Pytanie sa, ci je podmienka splnena - pokus 1 :

Pytanie sa, ci je podmienka splnena - pokus 2 : Lampa svieti.

Ako vidíte, naučili sme sa počítaču klásť podmienky a na základe ich vyhodnotenia prispôsobiť tomu náš program.

Máte nejakú otázku alebo Vám niečo nie je jasné? Napíšte nám na info@zacni-programovat.sk a poradíme!

Ťažko sa vám učí samému?

Máte problémy s niektorými časťami alebo sa neviete učiť sám? Využite našu možnosť individuálnej asistencie:

  • samostatný prístup
  • vysvetlenie nejasností prebraného učiva
  • úlohy a cvičenia navyše
  • všetko z pohodlia domova cez mail a skype

Pre viac info kliknite tu

Kľúčové slová prednášky

podmienkaif elseifpodmienka phpphp if

IT ftip

Ako rozpoznáš introvertného programátora od extrovertného programátora? Extrovertný programátor sa pri rozhovore s tebou pozerá na tvoje topánky.