Употреба на return во цикъл во PHP
Toа што return се наоѓа внатре во цикъл,
не мора секогаш да биде грешка.
Во следниот пример направена е функција која
одредува колку од првите елементи на низата
треба да се соберат за збирот да стане поголем или
еднаков на 10:
<?php
function func($arr) {
$length = count($arr);
$sum = 0;
for ($i = 0; $i < $length; $i++) {
$sum += $arr[$i];
// Ако збирот е поголем или еднаков на 10:
if ($sum >= 10) {
return $i + 1; // излегуваме од цикъл и од функција
}
}
}
$res = func([1, 2, 3, 4, 5]);
echo $res;
?>
А во следниот пример направена е функција која
пресметува, колку цели броеви, почнувајќи од
1, треба да се соберат за резултатот
да биде поголем од 100:
<?php
function func() {
$sum = 0;
$i = 1;
while (true) { // бесконечен цикъл
$sum += $i;
if ($sum >= 100) {
return $i; // цикъл се врти додека не излезе овде
}
$i++;
}
}
echo func();
?>
Напишете функција која како параметар ќе
прима број и ќе го дели со 2
толку пати, се додека резултатот не стане помал
од 10. Нека функцијата враќа број
на итерации кои биле потребни за постигнување на
резултатот.