PHP에서 return의 미묘한 점
return 명령이 실행된 후에는
함수가 작동을 멈춥니다. 즉:
return이 실행된 후에는 어떤
코드도 더 이상 실행되지 않습니다.
다음 예를 보세요:
<?php
function func($num) {
return $num * $num;
echo '!'; // 이 코드는 절대 실행되지 않음
}
$res = func(3);
?>
함수에 하나의 return만 있어야 한다는 의미는 아닙니다.
하지만 그 중 하나만 실행됩니다.
다음 예에서는 매개변수의 값에 따라
첫 번째 또는 두 번째 return가
실행됩니다:
<?php
function func($num) {
if ($num >= 0) {
return '+';
} else {
return '-';
}
}
echo func( 3); // '+' 출력
echo func(-3); // '-' 출력
?>
다음 코드를 실행한 결과 화면에 무엇이 출력될까요:
<?php
function func($num) {
return $num;
$res = $num * $num;
return $res;
}
echo func(3);
?>
그 이유를 설명하세요.
다음 코드를 실행한 결과 각각의 echo는
무엇을 출력할까요:
<?php
function func($num) {
if ($num <= 0) {
return abs($num);
} else {
return $num * $num;
}
}
echo func(10);
echo func(-5);
?>
그 이유를 설명하세요.
다음 코드를 실행한 결과 각각의 echo는
무엇을 출력할까요:
<?php
function func($num) {
if ($num <= 0) {
return abs($num);
}
return $num * $num;
}
echo func(10);
echo func(-5);
?>
그 이유를 설명하세요.