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