Αδύνατο σημείο του 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);
?>

Εξηγήστε γιατί.