다음 코드의 실행 결과는?

과목: PHP

문제 번호: 3040

medium
다음 코드의 실행 결과는?
<?php
function getItems(): iterable {
    return ["x", "y", "z"];
}

$result = getItems();
foreach($result as $value) {
    echo $value;
}
?>
A. xyz
B. ["x", "y", "z"]
C. Array
D. 오류 발생

정답: A



함수가 배열을 반환하고 foreach로 각 요소를 출력하므로 "xyz"가 차례대로 출력됩니다.

실행 과정:

1. getItems() 함수 호출 → ["x", "y", "z"] 배열 반환

2. 반환된 배열이 $result 변수에 저장

3. foreach 루프 실행:
⦁ 첫 번째 반복: $value = "x" → "x" 출력
⦁ 두 번째 반복: $value = "y" → "y" 출력
⦁ 세 번째 반복: $value = "z" → "z" 출력

반환 타입 iterable의 의미:

⦁ 함수가 foreach로 반복 가능한 값을 반환한다는 보장
⦁ 배열이나 Iterator 객체 모두 반환 가능
⦁ 호출자는 반환값을 안전하게 foreach로 처리할 수 있음

💡 학습 팁

이 문제를 포함한 PHP 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.