DEV WIKI
백엔드 · 오류·증상

Parse error: syntax error, unexpected 'new' (T_NEW) in /tmp/test.php on line 3

오류 메시지·상태명

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

빠른 답변

이 오류는 무엇인가요?
PHP 7에서 `new` 문의 결과를 참조로 대입하면 파서 오류가 발생합니다.
가장 흔한 원인은 무엇인가요?
PHP 7에서는 `new` 문의 결과를 변수에 참조로 대입할 수 없으므로 `$c =& new C;` 구문에서 `Parse error: syntax error, unexpected 'new' (T_NEW)`가 발생합니다.
무엇을 먼저 확인해야 하나요?
현재 화면 또는 로그의 오류 문자열에 `Parse error: syntax error, unexpected 'new' (T_NEW)`가 포함되는지 확인합니다.

현재 증상

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

먼저 확인할 항목

현재 화면 또는 로그의 오류 문자열에 `Parse error: syntax error, unexpected 'new' (T_NEW)`가 포함되는지 확인합니다.

오류가 발생한 코드에 `new` 문의 결과를 `=&`로 참조 대입하는 구문이 있는지 확인합니다.

오류 문자열과 해당 구문이 모두 확인되면 이 문서의 문제로 식별합니다.

환경별 원인과 조치

증상

PHP 7에서 다음과 같이 new 문의 결과를 참조로 대입하면 파서 오류가 발생합니다.

class C {}$c =& new C;

표시되는 오류는 다음과 같습니다.

Parse error: syntax error, unexpected 'new' (T_NEW) in /tmp/test.php on line 3

확인

현재 화면 또는 로그의 오류 문자열에 Parse error: syntax error, unexpected 'new' (T_NEW)가 포함되는지 확인합니다.

오류가 발생한 코드에 $c =& new C;처럼 new 문의 결과 앞에 참조 대입 연산자 =&를 사용한 구문이 있는지 확인합니다.

두 조건이 모두 맞으면 PHP 7의 new 결과 참조 대입 제한에 해당합니다.

범위

이 제한은 PHP 5.6.x에서 PHP 7.0.x로 마이그레이션할 때의 하위 호환성 변경 사항입니다.

참고 자료

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

확인 범위: PHP 7에서는 `new` 문의 결과를 변수에 참조로 대입할 수 없습니다., `$c =& new C;` 예제는 PHP 7에서 `Parse error: syntax error, unexpected 'new' (T_NEW)`를 출력합니다., 이 구문은 PHP 5에서 참조 대입이 deprecated라는 메시지를 출력했습니다. · 확인일: 2026-07-24