El punto delicado de return en PHP

Después de que se ejecute la instrucción return - la función terminará su trabajo. Es decir: después de ejecutar return, ningún código posterior se ejecutará.

Vea el ejemplo:

php<?php
  function func($num) {
    return $num * $num;
    
    echo '!'; // este código nunca se ejecutará
  }
  
  $res = func(3);
?>

Esto no significa que en la función deba haber un solo return. Pero solo se ejecutará uno de ellos.

En el siguiente ejemplo, dependiendo del valor del parámetro, se ejecutará el primer o el segundo return:

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

¿Qué se mostrará en la pantalla como resultado de ejecutar el siguiente código:

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

Explique por qué.

Задание 2

¿Qué mostrará cada uno de los echo como resultado de ejecutar el siguiente código:

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

Explique por qué.

Задание 3

¿Qué mostrará cada uno de los echo como resultado de ejecutar el siguiente código:

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

Explique por qué.