Цикл и return во PHP
Нека имаме функција што ја враќа сумата
на броевите од 1 до 5:
<?php
function func() {
$sum = 0;
for ($i = 1; $i <= 5; $i++) {
$sum += $i;
}
return $sum;
}
$res = func();
echo $res; // ќе испечати 15
?>
Сега да го поставиме return
внатре во циклусот, вака:
<?php
function func() {
$sum = 0;
for ($i = 1; $i <= 5; $i++) {
$sum += $i;
return $sum;
}
}
$res = func();
echo $res;
?>
Во овој случај, циклусот ќе се изврши само една
итерација и ќе дојде до автоматско излегување
од функцијата (а со тоа и од циклусот). А во една
итерација на циклусот, во променливата $sum ќе заврши
само бројот 1, а не целата потребна сума.
Што ќе се испечати на екранот како резултат на извршувањето на следниот код:
<?php
function func($num) {
$sum = 0;
for ($i = 1; $i <= $num; $i++) {
$sum += $i;
return $sum;
}
}
echo func(5);
?>
Објаснете зошто.
Што сакал да направи авторот на овој код? Исправете ја грешката на авторот.