จุดที่ต้องระวังเกี่ยวกับ return ใน PHP

หลังจากที่คำสั่ง return ถูกดำเนินการ - ฟังก์ชันจะยุติการทำงาน นั่นคือ: หลังจาก return ดำเนินการแล้ว จะไม่มีโค้ดใด ๆ ถูกทำงานอีกต่อไป

ดูตัวอย่าง:

php<?php
  function func($num) {
    return $num * $num;
    
    echo '!'; // โค้ดนี้จะไม่เคยถูกดำเนินการ
  }
  
  $res = func(3);
?>

นี้ไม่ได้หมายความว่าในฟังก์ชันต้องมี return เพียงอันเดียว แต่จะมีเพียงหนึ่งอันเท่านั้น ที่ถูกดำเนินการ

ในตัวอย่างถัดไป ขึ้นอยู่กับค่าของพารามิเตอร์ จะมีการดำเนินการ return แรก หรือ อันที่สอง :

php<?php
  function func($num) {
    if ($num >= 0) {
      return '+';
    } else {
      return '-';
    }
  }
  
  echo func( 3); // จะแสดง '+'
  echo func(-3); // จะแสดง '-'
?>
Задание 1

อะไรจะถูกแสดงบนหน้าจอ จากการดำเนินการ โค้ดต่อไปนี้:

php<?php
  function func($num) {
    return $num;
    
    $res = $num * $num;
    return $res;
  }
  
  echo func(3);
?>

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

Задание 2

แต่ละ echo จะแสดงอะไร ออกมา จากการ ดำเนินการโค้ดต่อไปนี้:

php<?php
  function func($num) {
    if ($num <= 0) {
      return abs($num);
    } else {
      return $num * $num;
    }
  }
  
  echo func(10);
  echo func(-5);
?>

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

Задание 3

แต่ละ echo จะแสดงอะไร ออกมา จากการ ดำเนินการโค้ดต่อไปนี้:

php<?php
  function func($num) {
    if ($num <= 0) {
      return abs($num);
    }
    
    return $num * $num;
  }
  
  echo func(10);
  echo func(-5);
?>

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