Pika e ndjeshme e return në PHP

Pasi të ekzekutohet udhëzimi return - funksioni do të përfundojë punën e tij. Kjo do të thotë: pas ekzekutimit të return asnjë kod tjetër nuk do të ekzekutohet.

Shikoni shembullin:

php<?php
  function func($num) {
    return $num * $num;
    
    echo '!'; // ky kod kurrë nuk do të ekzekutohet
  }
  
  $res = func(3);
?>

Kjo nuk do të thotë se në funksion duhet të ketë vetëm një return. Por do të ekzekutohet vetëm një prej tyre.

Në shembullin e mëposhtëm në varësi të vlerës së parametrit do të ekzekutohet ose i pari, ose i dyti return:

php<?php
  function func($num) {
    if ($num >= 0) {
      return '+';
    } else {
      return '-';
    }
  }
  
  echo func( 3); // do të shfaqë '+'
  echo func(-3); // do të shfaqë '-'
?>
Задание 1

Çfarë do të shfaqet në ekran si rezultat i ekzekutimit të kodit në vijim:

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

Shpjegoni pse.

Задание 2

Çfarë do të shfaqë secili echo si rezultat i ekzekutimit të kodit në vijim:

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

Shpjegoni pse.

Задание 3

Çfarë do të shfaqë secili echo si rezultat i ekzekutimit të kodit në vijim:

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

Shpjegoni pse.