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);
?>

ახსენით რატომ.