วงวนและ return ใน PHP

สมมติว่าเรามีฟังก์ชันที่คืนค่าผลรวมของตัวเลข ตั้งแต่ 1 ถึง 5:

php<?php
  function func() {
    $sum = 0;
    
    for ($i = 1; $i <= 5; $i++) {
      $sum += $i;
    }
    
    return $sum;
  }
  
  $res = func();
  echo $res; // แสดงผล 15
?>

ทีนี้ สมมติว่าเราใส่ return ไว้ภายในวงวน แบบนี้:

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

ในกรณีนี้ วงวนจะทำงานเพียงหนึ่งรอบเท่านั้น แล้วจะออกจากฟังก์ชันทันที (และออกจากวงวนด้วย) และในหนึ่ง รอบของวง loop ตัวแปร $sum จะเก็บค่า เพียงแค่เลข 1 เท่านั้น ไม่ใช่ผลรวมทั้งหมดที่ต้องการ

Задание 1

ผลลัพธ์ที่แสดงบนหน้าจอจากการทำงานของ โค้ดต่อไปนี้คืออะไร:

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

อธิบายเหตุผล

ผู้เขียนโค้ดนี้ต้องการทำอะไร? แก้ไข ข้อผิดพลาดของผู้เขียน