DEV WIKI
백엔드 · 오류·증상

Switch statements cannot have multiple default blocks

최종 검토
2026-07-24
참고 자료
있음
관련 기술

빠른 답변

이 오류는 무엇인가요?
PHP 7에서 switch 문에 default 블록을 둘 이상 정의하면 E_COMPILE_ERROR가 발생합니다.
가장 흔한 원인은 무엇인가요?
PHP 7에서는 하나의 switch 문에 default 블록을 둘 이상 정의할 수 없으며, 둘 이상이면 E_COMPILE_ERROR가 발생합니다.
무엇을 먼저 확인해야 하나요?
오류가 발생한 switch 문 안의 default: 블록 수를 확인합니다. default:가 두 번 이상이면 PHP 공식 문서가 설명한 E_COMPILE_ERROR 발생 조건과 일치합니다.

현재 증상

  • 애플리케이션 오류 메시지

먼저 확인할 항목

오류가 발생한 switch 문 안의 default: 블록 수를 확인합니다. default:가 두 번 이상이면 PHP 공식 문서가 설명한 E_COMPILE_ERROR 발생 조건과 일치합니다.

환경별 원인과 조치

PHP 7에서는 하나의 switch 문에 default 블록을 둘 이상 정의할 수 없습니다. 둘 이상 정의하면 E_COMPILE_ERROR가 발생합니다.

확인

오류가 발생한 switch 문을 확인합니다. 같은 switch 블록 안에 default:가 두 번 이상 있으면 이 조건에 해당합니다.

출처

PHP: Backward incompatible changes (새 창에서 열림)

참고 자료

PHP · 공식 자료 (새 창에서 열림)

확인 범위: PHP 7에서는 switch 문에 default 블록을 둘 이상 정의할 수 없습니다., default 블록이 둘 이상인 switch 문은 E_COMPILE_ERROR를 발생시킵니다. · 확인일: 2026-07-24