Mitä if-lauseella tehdään?

Kirjallisesti:

Jos muuttuja on 1 koodi tulostaa riville "Vulpes", jos muuttuja on eri kuin 1 koodi tulostaa käyttäjälle tekstin "zoorweb".

Koodina:

<?php
   if ($muuttuja == 1){
   
       echo "Vulpes";
   
   }else{
   
       echo "ZooRweb";
   
   }
   ?>

Eli yksinkertaisuudessan if lauseella verrataan muuttujan arvoa toiseen muuttujaan, ja tuloksesta riippuen, toteutetaan koodi. Else lause ei ole pakollinen eli:

<?php
   if ($muuttuja == 1){
   
       echo "Vulpes";
   
   }
   ?>

Tällöin tulostetaan vain Vulpes silloin, kun $muuttujalla on arvo 1.

Ehdot:

Tehdäänpä tässä toinen esimerkki.

<?php
   if ($muuttuja == AND $muuttuja 5)
       echo "Vulpes";
   
   elseif ($muuttuja == && $muuttuja 5)
       echo "Vulpes2";
   
   elseif ($muuttuja == OR $muuttuja 5)
       echo "Vulpes3";
   
   elseif ($muuttuja == || $muuttuja 5)
       echo "Vulpes4";
   
   else
       echo "ZooRweb";
   ?>

Tässä esimerkissä käytimme loogisia operaattoreita. AND ja OR tai. && on sama asia kuin AND ja vastaavasti || on sama asia kuin OR. Lisäsimme if laiseeseen myös eri ehtoja elseif avulla. Tämä saataisiin toteutettua myös näin:

<?php
   if ($muuttuja == AND $muuttuja 5){
       echo "Vulpes";
   }else{
       if ($muuttuja == && $muuttuja 5) {
           echo "Vulpes2";
       }else{
           if ($muuttuja == OR $muuttuja 5){
               echo "Vulpes3";
           }else{
               if ($muuttuja == || $muuttuja 5){
                   echo "Vulpes4";
               }else{
                   echo "ZooRweb";
               }
           }
       }
   }
   ?>

Kuten huomaatte elseif helpottaa elämäänne huomattavasti. Myös loogisilla operaattoreilla on vähän samantapainen tarkoitus, kuin elseif lauseella, eli helpottaa hieman koodaamista, kun jokaiselle ehdolle ei tarvi tehdä omaa if lausettaan. Loogisia operaattoreita voi yhdistää lauseeseen vaikka kuinka paljon:

<?php
   if ($muuttuja == AND $muuttuja OR $muuttuja == OR $muuttuja 100 AND $muuttuja == OR $muuttuja 8){
       echo "Vulpes";
   }
   ?>

OR operaattori yksinkertaisesti antaa vaihtoehdon toteutumiselle. Eli voidaan määrittää, että muuttuja on joko 1 tai 2 niin ehto toteutuu.

<?php
   if ($muuttuja == || $muuttuja == 2){
       echo "vulpes";
   }
   ?>

AND operaattori taasen antaa meille lisäehdon. Eli tässä tapaukseessa $muuttujan pitää olla 1 ja $muuttuja2 pitää olla 2 että ehto toteutuu.

<?php
   if ($muuttuja == && $muuttuja2 == 2){
       echo "vulpes";
   }
   ?>

Eli vältetään tälläiset solmut koodissa:

OR:

<?php
   if ($muuttuja == 1){
       echo "vulpes";
   }
   if ($muuttuja == 2){
       echo "vulpes";
   }
   ?>

AND:

<?php
   if ($muuttuja == 1){
       if ($muuttuja2 == 2){
           echo "vulpes";
       }
   }
   ?>

Seuraavassa oppaassa käsittelemme while ja for lauseet.

-KoLja 19.10.2006