Ciklus és return a PHP-ben

Tegyük fel, hogy van egy függvényünk, amely visszaadja a számok összegét 1-től 5-ig:

php<?php
  function func() {
    $sum = 0;
    
    for ($i = 1; $i <= 5; $i++) {
      $sum += $i;
    }
    
    return $sum;
  }
  
  $res = func();
  echo $res; // kiírja 15-öt
?>

Most tegyük a return-ot a cikluson belülre, így:

php<?php
  function func() {
    $sum = 0;
    
    for ($i = 1; $i <= 5; $i++) {
      $sum += $i;
      return $sum;
    }
  }
  
  $res = func();
  echo $res;
?>

Ebben az esetben a ciklus csak egy iterációt fog végrehajtani, és automatikusan kilép a függvényből (és egyúttal a ciklusból is). Egyetlen ciklusiteráció alatt a $sum változóban csak az 1 szám lesz, nem a teljes szükséges összeg.

Задание 1

Mi jelenik meg a képernyőn a következő kód végrehajtása eredményeképpen:

php<?php
  function func($num) {
    $sum = 0;
    
    for ($i = 1; $i <= $num; $i++) {
      $sum += $i;
      return $sum;
    }
  }
  
  echo func(5);
?>

Magyarázd meg, miért.

Mit akart eredetileg csinálni a kód szerzője? Javítsd ki a szerző hibáját.