Returning Values
Coddy PHP 여정의 기초 섹션에 포함된 레슨 — 71개 중 63번째.
지금까지 만든 함수들은 echo를 사용하여 출력을 직접 표시합니다. 하지만 종종 함수가 무언가를 계산하고 결과를 반환하여 코드의 다른 곳에서 사용할 수 있게 하고 싶습니다. 여기서 return 문이 등장합니다.
return 문은 함수가 호출된 위치로 값을 반환합니다:
<?php
function add($a, $b) {
return $a + $b;
}
$result = add(5, 3);
echo $result;
?>이는 8을 출력합니다. 함수 내부에서 합계를 출력하는 대신, 이를 반환합니다. 호출 코드가 그 값을 받아 $result에 저장합니다.
값을 반환하면 함수가 훨씬 더 다재다능해집니다. 반환된 값을 계산에 사용하거나, 다른 함수에 전달하거나, 나중에 저장할 수 있습니다:
<?php
function double($num) {
return $num * 2;
}
echo double(5) + double(3);
?>이는 16 (10 + 6)을 출력합니다. double()에 대한 각 호출은 덧셈에 사용되는 값을 반환합니다.
알아두셔야 할 중요한 점: PHP가 return 문을 만나면 함수가 즉시 중단됩니다. return 이후의 코드는 실행되지 않습니다.
챌린지
쉬움두 줄의 입력을 읽으세요:
- 직사각형의 밑변을 나타내는 숫자 (예:
5) - 직사각형의 높이를 나타내는 숫자 (예:
3)
calculateArea라는 함수를 생성하세요. 이 함수는 두 개의 매개변수 $base와 $height를 받아야 합니다. 함수는 직사각형의 면적 (base × height)을 return 해야 합니다.
입력 값을 사용하여 함수를 호출하고, 반환된 값을 변수에 저장한 후 결과를 출력하세요.
예제 1:
입력값이 5와 3인 경우, 출력은 다음과 같아야 합니다:
15예제 2:
입력값이 10와 7인 경우, 출력은 다음과 같아야 합니다:
70예제 3:
입력값이 12와 4인 경우, 출력은 다음과 같아야 합니다:
48치트 시트
return 문은 함수가 호출된 위치로 값을 반환하여 코드의 다른 부분에서 결과를 사용할 수 있게 합니다:
<?php
function add($a, $b) {
return $a + $b;
}
$result = add(5, 3);
echo $result; // Outputs: 8
?>반환된 값은 계산에 사용되거나 다른 함수에 전달될 수 있습니다:
<?php
function double($num) {
return $num * 2;
}
echo double(5) + double(3); // Outputs: 16
?>PHP가 return 문에 도달하면 함수가 즉시 중단됩니다. return 이후의 코드는 실행되지 않습니다.
직접 해보기
<?php
// 입력 읽기
$base = intval(fgets(STDIN));
$height = intval(fgets(STDIN));
// TODO: $base와 $height 매개변수를 받는 calculateArea라는 함수를 생성하세요
// 함수는 면적(base × height)을 반환해야 합니다
// TODO: 입력 값으로 함수를 호출하고 결과를 변수에 저장하세요
// 결과 출력
echo $result;
?>이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
4Comparison & Logical Operators
Comparison OperatorsEquality & IdentityLogical Operators Part 1Logical Operators Part 2Recap - Simple Logic2Variables and Data Types
NumbersStrings and QuotesBooleansNaming ConventionsRecap - Variable InitEmpty VariablesString ConcatenationGetting User InputCast to Different Types3Basic Operators
Arithmetic OperatorsModulo OperatorExponentiation OperatorCombined AssignmentIncrement/DecrementOperator PrecedenceRecap - Simple CalculationsString Operators