PHP-silmukka: For, Foreach, While, Do While [esimerkki]
Silmukka on iteratiivinen ohjausrakenne, jossa suoritetaan sama mรครคrรค koodia useita kertoja, kunnes tietty ehto tรคyttyy.
PHP For Loop
Yllรค oleva koodi tulostaa "21 on suurempi kuin 7" For loops Forโฆ -silmukat suorittavat koodilohkon tietyn mรครคrรคn kertoja. For-silmukoita on periaatteessa kahdenlaisia;
- varten
- jokaiselle.
Katsotaanpa niitรค nyt erikseen. Silmukalle Siinรค on seuraavat perusominaisuudet syntaksi
<?php
for (initialize; condition; increment){
//code to be executed
}
?>
TรSSร,
- "forโฆ{โฆ}" on silmukkalohko
- "alustaaโ yleensรค kokonaisluku; sitรค kรคytetรครคn laskurin alkuarvon asettamiseen.
- "kunto" ehto, joka arvioidaan kullekin php-suoritukselle. Jos sen arvo on tosi, forโฆ-silmukan suoritus jatkuu. Jos se arvioi arvoon false, forโฆ-silmukan suoritus lopetetaan.
- "lisรคys" kรคytetรครคn lisรครคmรครคn laskurin kokonaisluvun alkuarvoa.
Kuinka se toimii
Alla oleva vuokaavio havainnollistaa, kuinka for loop in php toimii
Kuinka koodata
Alla oleva koodi kรคyttรครค "forโฆ-silmukkaa" tulostaakseen arvot kertomalla 10:llรค 0 - 10
<?php
for ($i = 0; $i < 10; $i++){
$product = 10 * $i;
echo "The product of 10 * $i is $product <br/>";
}
?>
lรคhtรถ:
The product of 10 x 0 is 0 The product of 10 x 1 is 10 The product of 10 x 2 is 20 The product of 10 x 3 is 30 The product of 10 x 4 is 40 The product of 10 x 5 is 50 The product of 10 x 6 is 60 The product of 10 x 7 is 70 The product of 10 x 8 is 80 The product of 10 x 9 is 90
PHP jokaiselle silmukalle
Php foreach -silmukkaa kรคytetรครคn taulukon arvojen iterointiin. Siinรค on seuraava perussyntaksi
<?php
foreach($array_variable as $array_values){
block of code to be executed
}
?>
TรSSร,
- "jokaiselle(โฆ){โฆ}" on foreach php -silmukan lohkokoodi
- "$array_data" on taulukkomuuttuja, jonka lรคpi silmukka tehdรครคn
- "$array_value" on vรคliaikainen muuttuja, joka sisรคltรครค nykyiset taulukon kohteen arvot.
- "koodilohkoโฆ" on koodinpรคtkรค, joka toimii taulukon arvoilla
Kuinka se toimii Alla oleva vuokaavio havainnollistaa, kuinka forโฆ everyโฆ -silmukka toimii
Kรคytรคnnรถn esimerkkejรค
Alla oleva koodi kรคyttรครคโฆ jokaista silmukkaa taulukon elementtien lukemiseen ja tulostamiseen.
<?php
$animals_list = array("Lion","Wolf","Dog","Leopard","Tiger");
foreach($animals_list as $array_values){
echo $array_values . "<br>";
}
?>
lรคhtรถ:
Lion Wolf Dog Leopard Tiger
Katsotaanpa toista esimerkkiรค, joka kulkee lรคpi a assosiatiivinen matriisi.
Assosiatiivinen taulukko kรคyttรครค aakkosnumeerisia sanoja pรครคsyavaimiin.
<?php
$persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female");
foreach($persons as $key => $value){
echo "$key is $value"."<br>";
}
?>
Nimiรค on kรคytetty taulukkoavaimina ja sukupuolta arvoina.
lรคhtรถ:
Mary is Female John is Male Mirriam is Female
Vaikka silmukka
PHP While -silmukka
Niitรค kรคytetรครคn suorittamaan koodilohko a toistuvasti, kunnes asetettu ehto tรคyttyy
Milloin kรคyttรครค while-silmukoita
- Vaikka silmukoita kรคytetรครคn koodilohkon suorittamiseen, kunnes tietty ehto tรคyttyy.
- Voit kรคyttรครค while-silmukkaa lukeaksesi tietueita, jotka on palautettu a tietokanta.
While-silmukoiden tyypit
- Tehdรค, kun โ suorittaa koodilohkon vรคhintรครคn kerran ennen ehdon arviointia
- Sillรค aikaaโฆ โ tarkistaa ensin kunnon. Jos sen arvo on tosi, koodilohko suoritetaan niin kauan kuin ehto on tosi. Jos se arvioi arvoon false, while-silmukan suoritus lopetetaan.
Vaikka silmukka
Sillรค on seuraava syntaksi
<?php
while (condition){
block of code to be executed;
}
?>
TรSSร,
- "sillรค aikaa(โฆ){โฆ}" on while-silmukan lohkokoodi
- "kunto" on while-silmukan arvioitava ehto
- "koodilohko..." on koodi, joka suoritetaan, jos ehto tรคyttyy
Kuinka se toimii
Alla oleva vuokaavio havainnollistaa, kuinka whileโฆ-silmukka toimii
Kรคytรคnnรถn esimerkki
Alla oleva koodi kรคyttรครค whileโฆ-silmukkaa numeroiden 1-5 tulostamiseen.
<?php
$i = 0;
while ($i < 5){
echo $i + 1 . "<br>";
$i++;
}
?>
lรคhtรถ:
1 2 3 4 5
PHP Do While
Ero Whileโฆ silmukan ja Doโฆ while loop is doโฆ while vรคlillรค suoritetaan vรคhintรครคn kerran ennen ehdon arviointia.
Katsotaanpa nyt doโฆ while -silmukan perussyntaksia
<?php
do{
block of code to be executed
}
?>
while(ehto);
TรSSร,
- "tehdรค, kun(โฆ)" on tehdรคโฆ kun silmukkalohkokoodi
- "kunto" on while-silmukan arvioitava ehto
- "koodilohko..." on koodi, jonka doโฆ while -silmukka suorittaa vรคhintรครคn kerran
Kuinka se toimii
Alla oleva vuokaavio havainnollistaa, kuinka whileโฆ-silmukka toimii
Kรคytรคnnรถn esimerkki
Aiomme nyt muokata whileโฆ-silmukan esimerkkiรค ja toteuttaa sen kรคyttรคmรคllรค doโฆ while-silmukkaa ja aseta laskurin alkuarvoksi 9.
Alla oleva koodi toteuttaa yllรค olevan muokatun esimerkin
<?php
$i = 9;
do{
echo "$i is"." <br>";
}
while($i < 9);
?>
Yllรค oleva koodi tulostaa:
9
Huomautuksia yllรค oleva esimerkki tulostaa vain 9.
Tรคmรค johtuu siitรค, ettรค doโฆ while -silmukka suoritetaan ainakin kerran, vaikka asetettu ehto olisi epรคtosi.
Yhteenveto
- Forโฆ-silmukkaa kรคytetรครคn lohkon suorittamiseen tietyn mรครคrรคn kertoja
- Foreachโฆ -silmukkaa kรคytetรครคn taulukoiden lรคpi kiertรคmiseen
- Whileโฆ -silmukkaa kรคytetรครคn koodilohkon suorittamiseen niin kauan kuin asetettu ehto on tehty epรคtosi
- Teeโฆ while -silmukkaa kรคytetรครคn koodilohkon suorittamiseen vรคhintรครคn kerran, jolloin loput suorituksesta riippuu asetettujen ehtojen arvioinnista




