Цикл и 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); ?>

Объясните почему.

Что хотел сделать автор данного кода? Исправьте ошибку автора.



Чат с GPT Компилятор