Toнкае месца 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);
?>

Тлумачце чаму.