Det Følsomme Sted ved return i PHP

Efter at return-instruktionen er udført - afslutter funktionen sin arbejde. Det vil sige: efter udførelsen af return vil ingen yderligere kode blive udført.

Se eksemplet:

php<?php
  function func($num) {
    return $num * $num;
    
    echo '!'; // denne kode vil aldrig blive udført
  }
  
  $res = func(3);
?>

Det betyder ikke, at en funktion kun må have én return. Men kun én af dem vil blive udført.

I det følgende eksempel vil enten den første eller den anden return blive udført afhængigt af værdien af parameteren:

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

Hvad vil blive vist på skærmen som et resultat af udførelsen af følgende kode:

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

Forklar hvorfor.

Задание 2

Hvad vil hver af echo udskrive som et resultat af udførelsen af følgende kode:

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

Forklar hvorfor.

Задание 3

Hvad vil hver af echo udskrive som et resultat af udførelsen af følgende kode:

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

Forklar hvorfor.