Anvendelse af return i en løkke i PHP
At return er placeret inde i en løkke,
er ikke altid en fejl.
I det følgende eksempel er der lavet en funktion, som
bestemmer, hvor mange af de første elementer i arrayet
der skal lægges sammen, for at summen bliver større eller
lig med 10:
<?php
function func($arr) {
$length = count($arr);
$sum = 0;
for ($i = 0; $i < $length; $i++) {
$sum += $arr[$i];
// Hvis summen er større eller lig med 10:
if ($sum >= 10) {
return $i + 1; // afslutter løkken og funktionen
}
}
}
$res = func([1, 2, 3, 4, 5]);
echo $res;
?>
Og i det følgende eksempel er der lavet en funktion, som
beregner, hvor mange heltal, startende fra
1, der skal lægges sammen, for at resultatet
bliver større end 100:
<?php
function func() {
$sum = 0;
$i = 1;
while (true) { // uendelig løkke
$sum += $i;
if ($sum >= 100) {
return $i; // løkken kører indtil den afsluttes her
}
$i++;
}
}
echo func();
?>
Skriv en funktion, som ved parameter vil
tage et tal og dividere det med 2
så mange gange, indtil resultatet bliver mindre
end 10. Lad funktionen returnere antallet
af iterationer, der var nødvendigt for at opnå
resultatet.