작은숲:위키노트/PHP 5.5/하위 호환성이 없는 변화
|
이 글은 http://php.net/manual/en/migration55.incompatible.php의 내용을 번역한 것입니다. 원문의 저작권은 the PHP Documentation Group에게 있으며, 이 글의 라이선스는 원문의 라이선스(Creative Commons Attribution 3.0 License)를 따릅니다. |
윈도우 XP 및 2003의 지원 종료
윈도우 XP 및 2003은 더 이상 지원하지 않는다. PHP 5.5부터는 윈도우 Vista 이후 버전만 지원한다.
로케일에 의존하지 않는 대소문자 구별
PHP는 함수, 클래스, 상수 이름에서 대소문자를 구별하지 않지만, 그 방식이 ASCII 규정에 따라 로케일에 의존하지 않는 방식으로 바뀌었다. 몇몇 로케일에서 이에 대한 영향이 있을 수 있다. 함수나 클래스, 상수 이름에 영문자 외의 다른 문자를 쓰지 않는다면 이 변화로 인해 영향 받을 일은 없다.
pack() 함수와 unpack() 함수의 변경
pack() 함수와 unpack() 함수가 Perl과의 호환성을 높이도록 변경되었다. 만약 코드 내에 pack() 함수나 unpack() 함수를 쓴다면 이 문서를 꼭 확인하도록 하자.
self, parent, static 키워드가 대소문자를 구별하지 않음
이전 버전에서는 다른 함수나 클래스, 상수 이름과는 달리 self, parent, static 키워드는 대소문자를 구별했다. PHP 5.5부터는 이 키워드들도 대소문자를 구별하지 않는다.
PHP 로고 GUID 삭제
PHP 로고 출력을 위해 사용되던 GUID가 제거되었다. 그래서 아래 함수들도 함께 제거되었다.
- php_logo_guid()
- php_egg_logo_guid()
- php_real_logo_guid()
- zend_logo_guid()
내부 실행 방법 변화
PHP 5.5부터 zend_execute() 함수를 재정의(override) 할 수 없다. 그리고 execute_data 구조체나 그것과 관련한 함수, 그리고 메서드 처리 연산 코드(opcode)에도 변화가 생겼다. 이에 영향 받는 확장 모듈은 별로 없겠지만, 혹시 이런 내용을 포함하는 확장 모듈을 사용한다면 이 변화된 내용이 확장 모듈에 적용되었는지 확인해봐야 한다.
| PHP 7.0 | |
|---|---|
| PHP 5.6 | |
| PHP 5.5 | |
| 확장 기능 | |
| 활용 | |
| 소프트웨어 | |