PHP-ohjelmointi

 Etusivu

PHP ehtolauseet ja silmukat

Ehtolauseet
Yksi tärkeä osa PHP-koodauksessa ovat ehtolauseet. Ehtolauseilla tarkastetaan annettujen tietojen paikkansapitävyys ja näillä jetaan komentojen ehtoja. Ehdoilla tehdään lauseen tarkastus ja jos ehdot täyttyvät, voidaan tulokseksi antaa komennot. Ehtolause voi esimerkiksi tarkistaa annettujen arvojen paikkaansapitävyyttä tai niiden sopivuutta määrättyihin raameihin. Ehtona voi olla esimerkiksi salasanan yhtenäisyys annettuun arvoon, jotta sivuilla pääsee eteenpäin.

Ehtoja voidaan antaa eri tavoilla. Ylisimmin ehto on kahden eri muuttujan tai lausekkeiden vertailu toisiinsa. Käytettyjä vertailuoperaattoreita ovat esimerkiksi:

  • == (on yhtäsuuri kuin)

  • != (on eri kuin)

  • > (on suurempi kuin)

  • < (on pienempi kuin)

  • >= (suurempi tai yhtäsuuri)

  • <= (pienempi tai yhtäsuuri)

Ehdon tarkastukseen voidaan käyttää myös loogisia operaattoreita.

  • && (ovat molemmat tosia)

  • || (jompikumpi tai molemmat ovat tosia)

  • xor (jompikumpi on tosi, mutta eivät molemmat)

  • ! (ei ole tosi)

if-ehtolause
If-ehtolauseilla voidaan tehdä valintoja ja vertailuja siten, että joku toiminta suoritetaan riippuen mihin vertailtaviin ehtoihin nämä sopivat. Ehtoa vertaillaan if ja elseif lauseilla. Vertailu tapahtuu sulkeiden sisässä ja jos tieto täsmää, ajetaan ehtolauseen jälkeen olevat tapahtumat. Lopussa else ajetaan mikäli yksikään verrattava ehto ei täyty. Ehdoiksi laaditaan ehtolauseita. Lisäämällä elseif-lauseita saadaan enemmän vaihtoehtoja. If- ja else-lauseet on aina oltava aluksi ja lopuksi. Jos tapahtumalauseita on useampi kuin yksi, pitää ne erottaa aaltosuluilla muista.

if (1. ehto)
  tapahtumalause;
elseif (2. ehto)
  tapahtumalause;
elseif (3. ehto) {
  tapahtumalause;
  seuraava tapahtumalause
}
else
  tapahtumalauseke - suoritetaan jos mikään ehdoista ei täyty;


» harjoitus11.php malli

Muuttujan määritteleminen lomakeella
Lomakkeeseen voidaan laatia tekstiruutu, joka nimetään. Nimen määrittelemiseen käytetään name-käskyä. Vastaavasti aloittaessa php-koodia, tämä tieto voidaan kaapata ja muuttaa muuttujaksi. Lomakkeen tiedon kaappaamiseen käytetään koodia $_POST['lomakeruudun nimi']. Muuttuja voidaan määritellä suoraan tämän PHP-koodin yhteydessä.

$matka = $_POST['matkakm'];

 

Silmukat PHP-koodissa
PHP-koodissa tarvitaan useasti silmukoita jos halutaan tehdä toistavia lausekkeita. Voit haluta tehdä matemaattisia laskelmia tai yhteenlaskuja taulukoista. Useasti on tarvetta esimerkiksi listata taulukossa olevia arvoja ja tulostaa ne halutulla tavalla.

While-silmukka ja do while
While käsky on helppo tapa luoda tulostettavia silmukoita. While-käskyn jälkeen annetaan sulkeissa ehto, jonka täyttyessä ehto lopetetaan. Ehdoksi määritellään ehtolause. Jos suoritettavia käskylauseita on useita, laitetaan ne kaarisulkeiden sisään. Tämän voi aloittaa myös do-lauseella. While-ehdot tulevat tällöin lopuksi.


» harjoitus12.php malli


» harjoitus13.php malli

For-silmukat
For-silmukkaa käytetään tilanteissa kun ehdot ja toistojen määrän tarve on tiedossa. For-silmukka aloitetaan for-lausekkeella. Sulkeiden sisään annetaan lähtökohta, ehdot ja kuinka lukuja muutetaan. Silmukka toistetaan kunnes ehdot täyttyvät.

Silmukan katkaisu
Silmukat voidaan lopettaa myös kesken. Break-käskyllä voidaan antaa kesken silmukan ajon arvo, minkä toteutuessa silmukka lopetetaan, vaikka alkuperäinen ehto olisi jotain muuta. Continue-käskyllä taas voidaan keskeyttää koodirivien ajo ja silmukka aloittaa taas alusta.


» harjoitus14.php malli

Foreach-silmukka
Tämä toimii samalla tavalla kuin for-silmukka, mutta on käytännöllisemmin jos tulostettavat arvot eivät ole numerojärjestyksessä. Foreach-silmukalla voidaan käydä jokainen arvo läpi vuorotellen, vaikka ne eivät ole järjestelmällisiä.


» harjoitus15.php malli

Video

 
 

Aiheeseen liittyvät linkit

Varmuuskopiointia
 - Mureakuha - PHP-perusteet
 - Vida - PHP-kurssi

Opetusmateriaalia (PDF)
 - PHP ja MySQL - MicroPC

 

 

Kysy neuvoa tai anna vinkki

 

Tiedotteet ja aikataulut

Tervetuloa kurssille!!

 

Tehtävät ja palautus

Tehtävä

1. Laadi if-ehtolauseilla toiminta, joka lomakeruudulla kysyy ikää ja antaa vastauksen sivulle annetun arvon mukaan:

  • alle 0 = Et ole syntynyt vielä

  • 0-1 = Olet sylivauva

  • 2-6 = Vietät aikaa lastentarhassa

  • 7-16 = Olet peruskoululainen

  • 17-25 = Opiskelu vie aikaa

  • 26-65 = Työura on tärkeä

  • Yli 65 = Onko kivaa eläkkeellä?

2. Laadi valitsemallasi tavalla silmukka joka tekee kertotaulun annetusta luvusta nollasta alkaen sataan asti. Vastaukset tulostuvat sivulle omille rivilleen kokonaisena laskukaavana ja vastauksena.

Palauta koodit verkkoon alla olevasta linkistä. Palauta tehtävät muistioon kirjoitettuna. Voit kirjoittaa ja muokata tehtäviä myös palautuksen jälkeen. Palautuskansio on salasanasuojattu. Saat käyttäjätiedot opettajalta. Palauta tiedosto varustettuna omalla nimelläsi muotoon:
sukunimi_etunimi.txt

» Palauta tiedosto tänne