PHP에서 return의 미묘한 점

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);
?>

그 이유를 설명하세요.