Bruk av return i løkker i PHP
At return er plassert inne i en løkke,
er ikke alltid en feil.
I følgende eksempel er det laget en funksjon som
bestemmer hvor mange av de første elementene i arrayet
som må legges sammen for at summen skal bli større eller
lik 10:
<?php
function func($arr) {
$length = count($arr);
$sum = 0;
for ($i = 0; $i < $length; $i++) {
$sum += $arr[$i];
// Hvis summen er større enn eller lik 10:
if ($sum >= 10) {
return $i + 1; // avslutter løkken og funksjonen
}
}
}
$res = func([1, 2, 3, 4, 5]);
echo $res;
?>
I følgende eksempel er det laget en funksjon som
beregner hvor mange heltall, starter fra
1, som må legges sammen for at resultatet
skal bli større enn 100:
<?php
function func() {
$sum = 0;
$i = 1;
while (true) { // uendelig løkke
$sum += $i;
if ($sum >= 100) {
return $i; // løkken spinner til den avsluttes her
}
$i++;
}
}
echo func();
?>
Skriv en funksjon som tar et tall som parameter
og deler det på 2
så mange ganger, til resultatet blir mindre enn
10. La funksjonen returnere antall
iterasjoner som var nødvendig for å oppnå
resultatet.