PHP Loop: For, ForEach, While, Do While [Exempel]

En loop รคr en iterativ kontrollstruktur som innebรคr att man kรถr samma antal kod ett antal gรฅnger tills ett visst villkor รคr uppfyllt.

PHP fรถr loop

Ovanstรฅende kod utmatar "21 รคr stรถrre รคn 7" Fรถr loopar For... loopar exekvera kodblocket ett specificerat antal gรฅnger. Det finns i princip tvรฅ typer av fรถr loopar;

  • fรถr
  • fรถr varje.

Lรฅt oss nu titta pรฅ dem separat. Fรถr slinga Den har fรถljande grundlรคggande syntax

<?php
for (initialize; condition; increment){

//code to be executed

}
?>

Hร„R,

  • "fรถrโ€ฆ{โ€ฆ}" รคr slingblocket
  • "initialiseraโ€ vanligtvis ett heltal; den anvรคnds fรถr att stรคlla in rรคknarens initiala vรคrde.
  • "skick" villkoret som utvรคrderas fรถr varje php-exekvering. Om det utvรคrderas till sant, fortsรคtter exekveringen av for...-slingan. Om det utvรคrderas till falskt, avslutas exekveringen av for...-slingan.
  • "รถkning" anvรคnds fรถr att รถka startvรคrdet fรถr rรคknarheltal.

Hur det fungerar

Flรถdesschemat som visas nedan illustrerar hur man gรถr loop in php fungerar

PHP fรถr loop

Hur man kodar

Koden nedan anvรคnder "for... loop" fรถr att skriva ut vรคrden fรถr att multiplicera 10 med 0 till 10

<?php

for ($i = 0; $i < 10; $i++){

$product = 10 * $i;

echo "The product of 10 * $i is $product <br/>";
}

?>

Produktion:

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 fรถr varje slinga

php foreach loop anvรคnds fรถr att iterera genom arrayvรคrden. Den har fรถljande grundlรคggande syntax

<?php
foreach($array_variable  as $array_values){

block of code to be executed

}
?>

Hร„R,

  • "fรถr varje(โ€ฆ){โ€ฆ}" รคr koden fรถr foreach php loop block
  • "$array_data" รคr arrayvariabeln som ska loopas igenom
  • "$array_value " รคr den temporรคra variabeln som hรฅller de aktuella arrayobjektvรคrdena.
  • "kodblock..." รคr den kodbit som fungerar pรฅ matrisvรคrdena

Hur det fungerar Flรถdesschemat som visas nedan illustrerar hur loopen fรถrโ€ฆ varjeโ€ฆ fungerar

PHP fรถr varje slinga

Praktiska exempel

Koden nedan anvรคnder fรถr... varje slinga fรถr att lรคsa och skriva ut elementen i en array.

<?php

$animals_list = array("Lion","Wolf","Dog","Leopard","Tiger");

foreach($animals_list as $array_values){

echo $array_values . "<br>";

}

?>

Produktion:

Lion
Wolf
Dog
Leopard
Tiger

Lรฅt oss titta pรฅ ett annat exempel som gรฅr igenom en associerande matris.

En associativ array anvรคnder alfanumeriska ord fรถr รฅtkomstnycklar.

<?php

$persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female");

foreach($persons as $key => $value){

echo "$key is $value"."<br>";

}

?>

Namnen har anvรคnts som arraynycklar och genus som vรคrden.

Produktion:

Mary is Female
John is Male
Mirriam is Female

Medan Loop

PHP While loop

De anvรคnds fรถr att exekvera ett kodblock upprepade gรฅnger tills det instรคllda villkoret รคr uppfyllt

Nรคr du ska anvรคnda while-slingor

  • Medan loopar anvรคnds fรถr att exekvera ett kodblock tills ett visst villkor blir sant.
  • Du kan anvรคnda en while-loop fรถr att lรคsa poster som returneras frรฅn en databas.

Typer av while-slingor

  • Gรถra medan โ€“ exekverar kodblocket minst en gรฅng innan villkoret utvรคrderas
  • Medanโ€ฆ โ€“ kontrollerar tillstรฅndet fรถrst. Om det utvรคrderas till sant, exekveras kodblocket sรฅ lรคnge villkoret รคr sant. Om det utvรคrderas till falskt, avslutas exekveringen av while-slingan.

Medan slinga

Den har fรถljande syntax

<?php
while (condition){

block of code to be executed;

}
?>

Hร„R,

  • "medan(โ€ฆ){โ€ฆ}" รคr while-slingans blockkod
  • "skick" รคr villkoret som ska utvรคrderas av while-slingan
  • "kodblock..." รคr koden som ska kรถras om villkoret uppfylls

Hur det fungerar

Flรถdesschemat nedan illustrerar hur while...-slingan fungerar

Medan Loop

Praktiskt exempel

Koden nedan anvรคnder slingan while... fรถr att skriva ut nummer 1 till 5.

<?php

$i = 0;

while ($i < 5){

echo $i + 1 . "<br>";

$i++;

}

?>

Produktion:

1
2
3
4
5

PHP gรถr medan

Skillnaden mellan Whileโ€ฆ loop och Doโ€ฆ while loop รคr doโ€ฆ while exekveras minst en gรฅng innan villkoret utvรคrderas.

Lรฅt oss nu titta pรฅ den grundlรคggande syntaxen fรถr en do... while loop

<?php
do{

block of code to be executed

}
?>

while(villkor);

Hร„R,

  • "gรถra medan(โ€ฆ)" รคr do... while loop block koden
  • "skick" รคr villkoret som ska utvรคrderas av while-slingan
  • "kodblock..." รคr koden som exekveras minst en gรฅng av do... while-loopen

Hur det fungerar

Flรถdesschemat nedan illustrerar hur while...-slingan fungerar

PHP gรถr medan

Praktiskt exempel

Vi ska nu modifiera whileโ€ฆ loop-exemplet och implementera det med doโ€ฆ while-loopen och stรคlla in rรคknarens initiala vรคrde till 9.

Koden nedan implementerar ovanstรฅende modifierade exempel

<?php

$i = 9;

do{

    echo "$i is"." <br>";

}

while($i < 9);

?>

Ovanstรฅende kodutgรฅngar:

9

Anmรคrkningar exemplet ovan ger endast ut 9.

Detta beror pรฅ att do... while-loopen exekveras minst en gรฅng รคven om det instรคllda villkoret utvรคrderas till falskt.

Sammanfattning

  • For... loopen anvรคnds fรถr att exekvera ett block med ett specificerat antal gรฅnger
  • Foreachโ€ฆ loopen anvรคnds fรถr att loopa genom arrayer
  • While... loop anvรคnds fรถr att exekvera ett kodblock sรฅ lรคnge det instรคllda villkoret gรถrs att vara falskt
  • Do... while-loopen anvรคnds fรถr att exekvera kodblocket minst en gรฅng, sedan รคr resten av exekveringen beroende av utvรคrderingen av det instรคllda villkoret

Sammanfatta detta inlรคgg med: