PHP
PHP KOULUTUSTA VUONNA 2025!
-
PHP koulutus
-
WordPress PHP-devaajalle koulutus
-
MySQL koulutus
-
Apache HTTPd koulutus
-
Microsoft IIS koulutus
Kurssit saatavilla kautta Suomen. Tule ja varaa oma koulutustapahtumasi heti! Koulutuksen järjestää asiantuntijasi Koulutus- ja konsultointipalvelu KK Mediat.
PHP:n if-else ehtorakenne
If-ehtorakenne
If-lause on syntaksiltaan hyvin yksinkertainen:
if (ehto) {
//suorita jotain koodia
}
Ehto saa arvokseen joko True (tosi) tai False (epätosi). Jos ehto on tosi, suoritetaan lohko. Muussa tapauksessa koodilohkoa ei suoriteta.
If-else ehtorakenne
Jos halutaan ilmoittaa mitä tehdä jos ehto on epätosi, käytetään seuraavanlaista syntaksia :
if (ehto) {
//suorita jotain koodia
}
else {
//tee jotain muuta
}
If-elseif-else ehtorakenne
If-lauseen kolmas muunnos antaa mahdollisuuden määrittää miten menetellä ehdon eri arvoilla:
if (ehto > 100) {
//suorita jotain koodia
}
elseif (ehto > 5) {
//suorita jotain koodia
}
else {
//tee jotain muuta
}
Muutama esimerkki
Katsotaan vielä muutaman käytännön esimerkki ehtolauseista.
Eräs hyvin yleinen käyttökohden on sivun HTTP-menetelmän tarkistaminen. Tätä voidaan hyödyntää mm. kun halutaan käsitellä vastaanotettavaa dataa esimerkiksi lomakkeen tai rajapinnan kautta:
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// Sivu lähetettiin POST-menetelmällä
} else {
// Sivu ei ole lähetetty POST-menetelmällä
}
Usein ehtoja ryhmitellään operaattoreiden avulla loogisiksi, useita ehtoja kattaviksi kokonaisuuksiksi. Esimerkiksi alapuolella oleva koodi tarkistaa, että kyselymerkkijono sisältää arvon ID, ja että arvo on isompi kuin nolla ennen tiedon sijoittamista muuttujaan.
if (isset($_GET['id']) && (int) $_GET['id']> 0) {
$iTuoteID = $_GET['id'];
}
Ternäärinen operaattori :?
Perinteisen ehtorakenteen lisäksi PHP tukee nk. ternääristä pikasyntaksia (?:
). Sen avulla ehtorakenne voidaan kirjoittaa lyhyemmässä muodossa.
Esimerkiksi:
$iIkä = 20;
if ($iIkä >= 18) {
echo "Aikuinen";
}
elseif ($iIkä > 13) {
echo "Teini";
}
else {
echo "Lapsi";
}
// on täsmälleen sama kuin:
echo ($iIkä >= 18) ? "Aikuinen" : (($iIkä > 13) ? "Teini" : "Lapsi");