다음 코드의 실행 결과는?

과목: PHP

문제 번호: 2882

hard
다음 코드의 실행 결과는?
function createGlobal() {
    $GLOBALS["message"] = "Hello World";
}

createGlobal();
echo $message;
A. 오류 발생
B. 아무것도 출력되지 않음
C. "Hello World"
D. "$message"

정답: C



$GLOBALS를 사용하면 함수 내부에서도 전역 변수를 생성할 수 있습니다.

⦁ 동작 과정 분석:
1. createGlobal() 함수 호출
2. 함수 내부에서 $GLOBALS["message"]에 값 할당
3. 이는 전역 변수 $message를 생성하는 것과 같음
4. 함수 종료 후에도 전역 변수는 유지됨
5. echo $message로 전역 변수 값 출력

⦁ 핵심 개념:
$GLOBALS 배열은 실제 전역 변수들의 참조
⦁ 함수 내부에서 $GLOBALS로 생성한 변수는 함수 외부에서도 접근 가능
⦁ 일반적인 함수 내 지역 변수와는 완전히 다른 동작

💡 학습 팁

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