Tehtävä 1 Kokeile taulukon (yllä) Tulos luku1 muuttujaan-sarakkeen kaikkia operaattoreita vaihtamalla taulukon esimerkit aiemmin yllä olevaan esimerkki-ohjelmaan.
ERILAISET OPERAATTORI
ARITMEETTISET-OPERAATTORIT
Aritmeetisilla-operaattoreilla suoritetaan yksinkertaisia laskutoimituksia, yhteen-, vähennys-, kerto- ja jakolaskuja sekä jakojäännöksen selvittäminen.$tulos = $muuttuja1 operaattori $muuttuja1;
Esimerkissä on käytetty kaikkia aritmeettisia operaattoreita.
/* Aritmeettiset-operaattorit */ <php $tulos = 0; $luku1 = 5; $luku2 = 2; $tulos = $luku1 + $luku2; echo $tulos . "<br>"; $tulos = $luku1 - $luku2; echo $tulos . "<br>"; $tulos = $luku1 * $luku2; echo $tulos . "<br>"; $tulos = $luku1 / $luku2; echo $tulos . "<br>"; $tulos = $luku1 % $luku2; echo $tulos . "<br>"; /* $tulos = $luku1 ** $luku2; Yllä, PHP 5.6:n potenssilasku */ ?>
7
3
10
2.5
1
Taulukossa lyhyemmät tavat kirjoittaa operaattorit.
Operaattori | echo:n yhteydessä | Tulos luku1 muuttujaan |
---|---|---|
$tulos = $luku1 + $luku2; | echo $luku1 + $luku2; | $luku1 += $luku2; |
$tulos = $luku1 - $luku2; | echo $luku1 - $luku2; | $luku1 -= $luku2; |
$tulos = $luku1 * $luku2; | echo $luku1 * $luku2; | $luku1 *= $luku2; |
$tulos = $luku1 / $luku2; | echo $luku1 / $luku2; | $luku1 /= $luku2; |
$tulos = $luku1 % $luku2; | echo $luku1 % $luku2; | $luku1 %= $luku2; |
Takaisin oppaaseen
VERTAILU-OPERAATTORIT
Vertailu-operaattoreiden avulla voidaan verrata muuttujassa olevaa tietoa numero-arvoon, merkkiin tai merkkijonoon. Vertailtavat tiedot voivat myös olla molemmat muuttujiin talletettuina.Esimerkissä tutkitaan
var_dump()
-funktion avulla pitääkö vertailu paikkansa, eli onko kyseessä tosi vai epätosi
lauseke. /* Vertailu-operaattoreita */ <?php $Luku_1 = 5; $Luku_2 = "5"; echo "Onko luku_1 < luku_2 --> "; //pienempi var_dump($Luku_1 < $Luku_2); echo "Onko luku_1 > luku_2 --> "; //suurempi var_dump($Luku_1 > $Luku_2); echo "Onko luku_1 <> luku_2 --> "; //eri suuri var_dump($Luku_1 <> $Luku_2); echo "Onko luku_1 >= luku_2 --> "; //suurempi tai yhtäsuuri var_dump($Luku_1 >= $Luku_2); echo "Onko luku_1 <= luku_2 --> "; //pienempi tai yhtäsuuri var_dump($Luku_1 <= $Luku_2); echo "Onko luku_1 != luku_2 --> "; //eri suuri var_dump($Luku_1 != $Luku_2); echo "Onko luku_1 !== luku_2 --> "; //ei ole identtinen var_dump($Luku_1 !== $Luku_2); echo "Onko luku_1 == luku_2 --> "; //yhtäsuuri var_dump($Luku_1 == $Luku_2); echo "Onko luku_1 === luku_2 --> "; //identtinen var_dump($Luku_1 === $Luku_2); ?>
Onko luku_1 < luku_2 --> bool(false) Onko luku_1 > luku_2 --> bool(false) Onko luku_1 <> luku_2 --> bool(false) Onko luku_1 >= luku_2 --> bool(true) Onko luku_1 <= luku_2 --> bool(true) Onko luku_1 != luku_2 --> bool(false) Onko luku_1 !== luku_2 --> bool(true) Onko luku_1 == luku_2 --> bool(true) Onko luku_1 === luku_2 --> bool(false)
Tehtävä 2 Puuttuu toistaiseksi, esimerkin vertailuja tarvitaan ehto-rakenteissa.
Takaisin oppaaseen
LOOGISET-OPERAATTORIT
Loogisilla operaattoreilla "voidaan muodostaa looginen kokonaisuus jonka perusteella tehdään jokin asia".AND sekä OR
AND-operaattorilla yhdistetään kaksi ehtoa joiden molempien pitää olla totta. OR-operaattorilla yhdistetään kaksi ehtoa joista toisen tai molempien pitää olla totta.Esimerkissä kaksi if-lausetta:
Jos lukuA on yhtäsuuri kuin 5 "JA" lukuB on yhtäsuuri kuin 3,
näytetään teksti.
Jos lukuA on yhtäsuuri kuin 0 "TAI" lukuB on yhtäsuuri kuin 3,
näytetään teksti.
<?php $lukuA = 5; $lukuB = 3; if ($lukuA == 5 and $lukuB == 3) { echo "Näytetään tämä, koska AND-lauseke on tosi."; } if ($lukuA == 0 or $lukuB == 3) { echo "<br>Näytetään tämäkin, koska OR-lauseke on tosi."; } ?>
Näytetään tämä, koska AND-lauseke on tosi.
Näytetään tämäkin, koska OR-lauseke on tosi.
Tehtävä 3 Sijoita muuttujiin sanat: teksti1 = kissa teksti2 = koira Kokeile esimerkin pohjalta toimiiko vertailut kun muuttujissa olevaa tietoa vertataan seuraavasti: jos teksti1 on yhtäsuuri kuin kissa ja teksti2 on yhtäsuuri kuin koira tulostuu: Kissa ja koira on nisäkkäitä. jos teksti1 on yhtäsuuri kuin varis tai teksti2 on yhtäsuuri kuin koira tulostuu: Varis on lintu ja koira on nisäkäs. (huom! Mikäli teksti-vertailu ei ole mahdollista, jätä tekemäsi esimerkki kommenttina www-sivulle)
Takaisin oppaaseen
XOR
XOR-operaattorilla yhdistetään kaksi ehtoa siten että, vain toisen pitää olla totta mutta ei molempien./* XOR */ <?php $luku1 = 1; $luku2 = 2; if ($luku1 == 3 xor $luku2 == 2) { echo "Toinen ehdoista oli totta !"; } if ($luku1 == 3 xor $luku2 == 3) { echo "Kumpikaan ehdoista ei ole totta !"; } if ($luku1 == 1 xor $luku2 == 2) { echo "Molemmat ehdot oli totta !"; } ?>
Toinen ehdoista oli totta !
Tehtävä 4 Kokeile esimerkkiä ja muuta se tutkimaan edellisen tehtävän 3 tekstejä. (huom! Mikäli teksti-vertailu ei ole mahdollista, jätä tekemäsi esimerkki kommenttina www-sivulle)
Takaisin oppaaseen
NOT
NOT-operaattoria (!) käytetään yhdistämällä se esimerkiksi == -operaattoriin.Kirjoita teksti tähän.
<?php $luku = 100; if ($luku !== 90) { echo "Luku ei ole yhtäsuuri kuin 90."; } ?>
Luku ei ole yhtäsuuri kuin 90.
Tehtävä 3 Tähän tulee myöhemmin tehtävä 5.
Takaisin oppaaseen
MERKKIJONO-OPERAATTORIT
Merkkijonoja voidaan yhdistää www-sivulle näytettäessä sekä yhdistää muuttujassa oleva teksti toisessa muuttujassa olevaan.Kirjoita teksti tähän.
/* Merkkijonot */ <?php $teksti1 = "Tämä teksti "; $teksti2 = "liitettiin tämän eteen."; $tekstiA = "Punainen "; $tekstiB = "paroni."; echo $teksti1 . $teksti2 . "<br>"; $tekstiA .= $tekstiB; echo $tekstiA; ?>
Tämä teksti liitettiin tämän eteen.
Punainen paroni.
Tehtävä 6 Tehtävä kirjoitetaan tähän myöhemmin.
Takaisin oppaaseen
OSOITIN-OPERAATTORIT
Osoitin operaattoreilla operoidaan taulukoiden ja niiden sisältöjen parissa.Kahden taulukon yhdistäminen
Esimerkissä yhdistetään
taulu1
- ja taulu2
avaimet eli solujen nimet mutta ei taulukkojen varsinaista sisältöä.
Lopputuloksena soluA
, soluB
, soluC
ja soluD
ovat
avaimia eli taulukoiden solunimiä joiden avulla päästään käsiksi taulukoiden varsinaiseen sisältöön.print_r($taulu1 + $taulu2);
yhdistää kahden taulukon solujen nimet.<?php $taulu1 = array("soluA" => "Antti", "soluB" => "Eemeli"); $taulu2 = array("soluC" => "Heikki", "soluD" => "Jussi"); print_r($taulu1 + $taulu2); echo "<br>Solussa soluA on sisältönä " . $taulu1['soluA']; echo "<br>Solussa soluD on sisältönä " . $taulu2['soluD']; ?>
Array ( [soluA] => Antti [soluB] => Eemeli [soluC] => Heikki [soluD] => Jussi )
Solussa soluA on sisältönä Antti
Solussa soluD on sisältönä Jussi
Tehtävä 7 Tähän tulee myöhemmin tehtävä 7.
Takaisin oppaaseen
Samanarvoiset taulukot
Toisinaan on tarpeen tutkia onko kaksi taulukkoa samanlaisia. Jotta kaksi erinimistä taulukkoa ovat samanlaisia, on niiden solujen nimet sekä sisältö oltava samanlaiset. Samanlaisuutta tutkitaan
var_dump($tauluA == $tauluB);
-funktiossa.Esimerkissä on kolme erinimistä taulukkoa, kaksi taulukoista on samanlaisia.
/* Samanlaisten taulukoiden tutkiminen */ <?php $tauluA = array("SoluA" => "Opel", "SoluB" => "BMW"); $tauluB = array("SoluC" => "Audi", "SoluD" => "Volvo"); $tauluC = array("SoluA" => "Opel", "SoluB" => "BMW"); var_dump($tauluA == $tauluB); var_dump($tauluA == $tauluC); ?>
bool(false) bool(true)
Tehtävä 8 Tehtävä kirjoitetaan tähän myöhemmin.
Takaisin oppaaseen
Erilaiset taulukot
Erisuuruutta tutkimalla voidaan selvittää onko kahden taulukon välillä eroa.
<?php $tauluA = array("SoluA" => "Opel", "SoluB" => "BMW"); $tauluB = array("SoluC" => "Audi", "SoluD" => "Volvo"); $tauluC = array("SoluA" => "Citroen", "SoluB" => "BMW"); $tauluD = array("SoluE" => "Opel", "SoluF" => "BMW"); var_dump($tauluA != $tauluB); var_dump($tauluA != $tauluC); var_dump($tauluA != $tauluD); ?><
bool(true) bool(true) bool(true)
Tehtävä 9 Tähän tulee myöhemmin tehtävä 9.
Takaisin oppaaseen